|
|
Linux and Open Source News for 25th July 2007
|
Distro Watch
|
|
Source: LinuxTracker.org Category: Freespire Size: 677.05 MB Status: no seeders and 1 leechers Added: 2007-07-25 14:19:43
Source: LinuxTracker.org Category: Mepis Size: 409.89 MB Status: 6 seeders and 4 leechers Added: 2007-07-25 04:05:36
Source: LinuxTracker.org Category: SME Server Size: 514.82 MB Status: 6 seeders and 6 leechers Added: 2007-07-25 03:02:00
Source: desktopbsd DesktopBSD 1.6 RC3 is now available for download from mirrors or via BitTorrent: "This release candidate is considered a large step towards a final release 1.6 with major changes such as: X.Org release 7.2, improving support for modern graphics hardware; NVIDIA graphics driver, providing hardware 3D acceleration for .
Source: partedmagic Parted Magic is a 30MB Linux LiveCD/USB/PXE with its elemental purpose being to partition hard drives. Parted Magic 1.8 is out and it has some new features and many updated programs: "We added dd_rhelp, sdparm, mbr, and xfburn for starters. Updated programs: linux-2.6.22, e2fsprogs-1.40.2, ntfs-3g-1.710, dd_rescue-1.13, ddrescue-1.5, leafpad-0.8.11, .
|
|
Linux Today News Service
|
|
  
Source: Linux Today Linux.com: "Ubuntu Studio bills itself as the "multimedia creation flavor of Ubuntu," an official Ubuntu project "aimed at the GNU/Linux audio, video, and graphic enthusiast as well as professional." It is certainly flashy on the outside -- even if it is mostly the same Ubuntu Linux distro under the hood."
       
Source: Linux Today Desktop Linux: "A grass roots one-day Linux and open source conference will be held at the Toronto Congress Centre on Saturday, Oct. 13 beginning at 8:30 AM. The organizers of "Ontario Linux Fest 2007" are seeking to ramp up sponsors, speakers, attendees, and volunteers."
  
Source: Linux Today Computerworld: "In January, two of the most established Linux and open-source advocacy groups, the Open Source Development Lab and the Free Standards Group, merged, forming the San Francisco-based Linux Foundation. Jim Zemlin, who formerly served as executive director of the Free Standards Group, became the executive director of the newly formed group."
Source: Linux Today LWN.net: "Seeing what the mainstream media makes of things can be great fun sometimes. This time around, ComputerWorld UK picked up Don's article, running the same text but giving it a new title: Are top Linux developers losing the will to code? Slashdot picked it up under that title, then Wired chimed in with Core Linux Developers Stuck In Middle Management Mode, complete with a picture of a necktie-wearing employee wielding a stapler and a telephone."
       
Source: Linux Today Hoosier Penguin: "I was in an Irish pub in downtown Portland, contemplating ordering my third beer of the evening, when a force of energy dressed in black and carrying a very large skateboard shouted my name and threw himself into my field of admittedly narrowing vision "
Source: Linux Today Linux.com: "The primary job facing Rex is heading up the LSB. When asked about his plans for the LSB, Rex says one of his goals is "to increase the adoption of LSB by application vendors." He says that adoption by Linux vendors is "solid," but "ISVs are still looking for broader scope. I plan to provide that to allow more applications to be LSB-compliant.""
  
Source: Linux Today SugarCRM: "SugarCRM Inc today announced the upcoming release of Sugar Community Edition 5.0 will be licensed under the new Version 3 of the GNU General Public License "
  
Source: Linux Today OSOpinion: "If you have the time, consider taking Mandriva for a test run and judge for yourself. I have found it to be a mixture of polished efforts bundled with some amazingly boneheaded mistakes."
Source: Linux Today ZDNet Asia: "Linux has been riding on a wave in China, topping the growth of all operating systems in the first quarter of 2007, says an industry analyst."
Source: Linux Today Debian Admin: "monit is a utility for managing and monitoring, processes, files, directories and devices on a UNIX system. Monit conducts automatic maintenance and repair and can execute meaningful causal actions in error situations."
Source: Linux Today Earthweb News: "Sometimes you get the flaw fixed right the first time and sometimes you don't. For Mozilla, apparently they have not properly fixed at least two types of flaws which they previously claimed to have fixed."
  
Source: Linux Today Wired: '"You can be sure of succeeding in your attacks if you only attack places which are undefended."'
Source: Linux Today CNet News: "Microsoft should be able to extricate itself from the implications of the General Public License version 3, according to a leading Australian intellectual property lawyer."
Source: Linux Today rand($thoughts): "What’s more, Red Hat could help Microsoft gain OSS street cred almost instantly."
Source: Linux Today Linux World: "Is it game over for OpenDocument? Probably. We've been expecting Massachusetts ITD to publicly revise its open formats mandate to include Office Open XML (OOXML) ever since Louis Gutierrez resigned as CIO in early October 2006. That was as clear a signal that ODF had failed in Massachusetts as needed by anyone in the know."
Source: Linux Today Free Software Magazine: "If you’re a GNOME user I expect you’re more than familiar with the panels that come as standard with your desktop; if you use openSUSE you’re probably also familiar with the slab menu that Novell have developed. There are, however, several other applications out there that can extend and beautify your Gnome panels."
Source: Linux Today Lunapark6: "In a splendid move by Google, the company has recently released Google Desktop for Linux. The program provides search results for files residing on your local hard drive and the internet. Similar to the Linux program Beagle, Google Desktop provides more advance search features than earlier generation search programs."
Source: Linux Today Linux-Watch: "Sabayon Linux is designed to transform a computer into a Gentoo Linux system in less than five minutes, according to the project's website. Besides functioning as a live DVD, the DVD can also be used to install the OS onto a hard drive, thus acting as an easy-to-use Gentoo installation disk."
       
Source: Linux Today Internet News: "Multiple cores are the norm now for chip-makers, though application developers don't always develop in ways that take advantage of more than one processor core. How do you bridge the divide? Intel thinks the key is by making a cornerstone development tool for parallelism open source. To that end Intel is open sourcing Intel Threading Building Blocks (TBB) under the GPL version 2"
   
Source: Linux Today Desktop Linux: "During the Ubuntu Live Conference in Portland, Ore., Canonical announced the beta release of its Launchpad PPA (Personal Package Archive) service, a new way for developers to build and publish packages of their code, documentation, artwork, themes and other contributions to free software."
  
Source: Linux Today Desktop Linux: "HP will soon be joining Dell in offering at least one Linux desktop line in its SKU sales listing. Here's why I believe this."
 
Source: Linux Today DaniWeb: " it looks as if the dream ticket price tag of $100 will not be reached during the initial production run. Despite using open source software and a back to basics Linux powered OS, the Taiwan produced machine will actually cost $175 it would appear."
  
Source: Linux Today Linux In Novell’s East Region: "The first and most obvious option for creating PDF’s with Open Source is the excellent OpenOffice.org suite, where creating a PDF is just a quick click on the Export to PDF icon away."
Source: Linux Today HowtoForge: "This tutorial shows how you can install and use Beryl on a CentOS 5.0 desktop (the system must have a 3D-capable graphics card). With Beryl, you can make your desktop use beautiful 3D effects like wobbly windows or a desktop cube."
Source: Linux Today Internetnews: "Web Services are not synonymous with SOA. At least that's the opinion of Thomas Erl, a leading service-oriented architecture (SOA) expert and author of several books on SOA."
|
|
News for nerds, stuff that matters
|
|
Source: Slashdot: Linux Xemu writes "Inspired by Negroponte's laptop for children, the Swedish company Medison is now taking orders for their US$150 Linux laptop, the Medison Celebrity. The laptop is a 1.5 GHz Celeron M 370 with 14 inch screen, wireless network and it comes with Fedora Red Hat pre-installed."Read more of this story at Slashdot.
|
|
News, reviews and commentary on all aspects of Linux and open-source software, including application servers, communications and database servers.
|
|
  
Source: eWEEK Linux How to build your own silent, fast, eco-friendly Linux-based PC for use in a digital music listening system.
|
|
The O'Reilly Network ONLamp Articles and Weblogs
|
|
  
Source: ONLamp.com Andy Lester is renown for his evangelism of technical debt awareness, and his talk at OSCON was full of rich lessons on improving your code and yourself. Managing upward is a theme in his talk, but it isn’t his primary focus. Andy wields upward management as a tool which can be used to improve code quality, but it’s a topic that deserves significant attention as well. “Talk in dollars. This is the language that management understands.” — Andy Lester
  
Source: ONLamp.com Nobody develops for Perl anymore, CPAN is too crowded. Jordan Henderson
  
Source: ONLamp.com This post introduces developer tests that constrain exceptions. Our platform, as usual, is Ruby, yet these topics apply to any system. We will extend assert_raise() for more control over program faults.
The best developers write tests to keep their projects on track. Tests should cover every aspect of a program, and should take special care with program details that are sticky, hard, and mysterious. Exception handling is a murky topic, because when a program fails its control flow might not be obvious. Many a program has failed in the field because nobody in the lab tested all its error paths. Our test cases must ensure that faults make our programs degrade gracefully, not derail.
.S0 { color: #808080; } .S2 { font-family: '!Bitstream Vera Serif'; color: #007F00; } .S5 { font-weight: bold; color: #00007F; } .S7 { font-family: '!Bitstream Vera Sans Mono'; color: #7F007F; } .S9 { font-weight: bold; color: #007F7F; } .S10 { font-weight: bold; color: #000000; } .S12 { color: #000000; } .S13 { color: #800080; } span { font-family: '!Bitstream Vera Sans'; color: #000000; }
Ruby programs throw their errors with raise object, and catch them with rescue type = variable. Consider a program with a risky method that might raise an error. A real test would use a “Mock Object“, to temporarily replace that method with a method that always faults. Mocks are a different topic, so we will just use a fanatical method, perpetually intent on destroying our program:
def fanatic() raise 'bad news' end
You can neutralize it by guarding its statement with rescue:
fanatic() rescue puts($!)
The $! is a link to the raised object, and puts prints out its bad news.
Now we write a test case to demonstrate our method’s fanaticism:
def test_fanatic() fanatic() flunk('fanatic failed its mission') rescue RuntimeError # nothing end
flunk() is the assertion method that fails a test with a message. If control-flow reaches the flunk() line, the Ruby Unit Testing Framework will raise its own error type, Test::Unit::AssertionFailedError. The test runner catches that and converts it into a “Red Bar” - an error report.
The rescue RuntimeError statement won’t catch any other error type, so only the type we expect will allow the test case to pass.
assert_raise
Test::Unit wraps that test up in a convenient assertion, so this works the same:
def test_assert_fanatic_raises() assert_raise RuntimeError do fanatic() end end
When a program faults, the best way to handle the situation is roll all program state back to its condition when the user started the last input. Good developer tests will help us write the correct manipulations.
Then the program should report its error message to the user. These error messages are high-level features; they might use text substitutions, and even localizations. We should test these manipulations directly, but ultimately we will need to see if the exceptions propagate them correctly.
This test detects our fanatic’s error message:
def test_assert_fanatic_raises_good_message() exception = assert_raise(RuntimeError){ fanatic() } assert_match /bad news/, exception.message end
assert_raise explicitly returns the exception object it caught, so we can then use assert_match to spot-check the message’s important details.
Exception messages seem important enough to deserve an assertion of their own.
assert_raise_message
Test::Unit does not contain this assertion, so we must split that test case into a simpler case and a reusable assertion:
def test_assert_fanatic_raises_message() assert_raise_message RuntimeError, /bad news/ do fanatic() end end
def assert_raise_message(types, matcher, message = nil, &block) args = [types].flatten + [message] exception = assert_raise(*args, &block) assert_match matcher, exception.message, message end
The curious operators around *args are Ruby’s way of manipulating a method’s arguments as an array. assert_raise_message takes either a single exception type, or an array of types inside [] operators. The [].flatten trick turns the single type into an array, to pass into assert_raise. That assertion can take more than one exception because sometimes the same fault might raise more than one exception type. For example, the timeout{} method will raise Timeout::Error if statements inside its {} block run for too long. But if those statements call database methods with ActiveRecord, and if these methods happen to rescue that error, they will decorate it with ActiveRecord::StatementInvalid and re-raise it. So assert_raise should take both error types.TODO href target _blank
assert_raise Timeout::Error, ActiveRecord::StatementInvalid,
And assert_raise_message requires [], to distinguish its matching pattern:
assert_raise_message [Timeout::Error, ActiveRecord::StatementInvalid], //,
Messages
A developer test should store information, and save it for after we forget about the current feature. A test could fail while we are working on other features, so every test assertion should accept an error message argument. Composing a descriptive error message now could save lots of time debugging later, so these error messages are like exception messages. Their user is you, the developer.
So lets use our new assertion to test that our new assertion raises its error message. This is bad logic, but its heart is in the right parsec:
def test_assert_raise_message_raises_message assert_raise_message Test::Unit::AssertionFailedError, /ringer/ do assert_raise_message RuntimeError, /no raise me/, 'ringer' do fanatic() end end end
That test case would be typical diabolical cleverness … if its logic actually worked. But because it uses assert_raise_message to test itself, a single bug could create a symetric error in the test, and nothing would catch that.
Use assertions like assert_raise to ensure your programs unwind their stacks correctly, and break down any partly-constructed objects safely, at exception time. Your customers should not even notice them.
  
Source: ONLamp.com Twin conferences have been taking place at the convention center in Portland, Oregon this week: the O’Reilly Open Source convention and Ubuntu Live (also partly sponsored by O’Reilly). As we ramp up at OSCon, evidence of the drive toward openness in society continues to roll in.Senator Dick Durbin has announced an online forum about broadband policy that started last night. Today’s news that iPhone sales are disappointing provides one illustration of the importance of this issue. While the device is overpriced, I have no doubt that a key drag on its uptake is the slow network AT&T has devoted to it. This would have been considered ludicrous in East Asia.US Government, as we all know, is fleeing from openness as fast as its so-called leaders can run. At Tim O’Reilly’s open source briefing yesterday, open source advocate and version control expert Karl Fogel presented a case for recording and releasing all communications that go into making laws. Apparently the New York Times picked up Tim’s blog on the subject.The briefing also presented open web APIs, open source hardware, and other examples of how the open source movement has spilled over its origins in free software. The most popular free software packages are still infrastructure: operating systems, languages and language tools, system administration packages, and so forth. But there’s no doubt that everybody is evolving in response to this powerful model for encouraging creativity.
Karl half-joked yesterday, “One could almost cite it as an invariable rule that no open system becomes interesting until it generates spam.” In other words, the presence of malicious actors is the sign that a system is free enough from controls to be a foundation for positive innovation as well.”There’s a tight symbiosis between open data sources and open interfaces. It was the presence of open data sources (Google maps being the example everybody cites) that made thousands of developers take a fresh look at browsers and create the mash-up revolution. Visualization followed data acquisition. But now that the are so many great frameworks for doing creative visualization, developers are turning back to the server side and asking, “how can we present data better for all these tools?”Mike Pittaro of SnapLogic pointed me to Jon Udell’s one-man campaign to find and tag useful data sites, facilitating searches through a site on del.icio.us.Under Ajax, you can request a single item of data from a web server, which normally queries a database to return the data. Mike Pittaro suggested that the data source could be separated from the web server. Why not create dedicated servers (running probably on the same host but a different port) that handle HTTPRequest queries from browers directly? Static content (HTML, served by web servers) is segregated from the data (served by the data servers). He described SnapLogic’s open source solution as somewhere between Yahoo! Pipes and Microsoft’s project having the code name Astoria.Mash-ups and other highly distributed applications call for distributed authentication. OpenID is a long-awaited protocol that gives people pseudo-identities. That is, it doesn’t help you prove that the Salmon Pasha who’s sending you email is the same Salmon Pasha you shared a meal with at a cafe last week, but it helps you prove that it’s the same Salmon Pasha who runs a popular web site on bicycle repair, or the same Salmon Pasha who bought a sprocket wrench from your web site a month ago. (That is, if Salmon used OpenID to authenticate each time.)Consider OpenID an enabling platform. As Simon Willison said at OScon’s OpenID Bootcamp tutorial, “All the interesting things take place on top of OpenID.” Thus, it highlights a lot of weaknesses that have existed for a decade or more on the Internet. For instance, I asked how OpenID interacts with traditional certificate authorities, and pointed out that everybody routinely clicks through pop-up dialog boxes telling them that a site’s certificate can’t be validated. And indeed, the presenters said that SSL certificates are central to the authentication of the servers that host OpenID identities, so current weaknesses in maintaing certificates by browsers and web servers carry over to OpenID.Today I’ll give my presentation on free documentation. As soon as I get a moment to pause, I’ll blog about the reactions I’ve been getting from readers, audience members, and other colleagues, as well as say more about OSCon.
|
|