Recent blog entries

4 Feb 2012 mikal   » (Journeyer)

Wow, qemu-img is fast

I wanted to determine if its worth putting ephemeral images into the libvirt cache at all. How expensive are these images to create? They don't need to come from the image service, so it can't be too bad, right? It turns out that qemu-img is very very fast at creating these images, based on the very small data set of my laptop with an ext4 file system...

    mikal@x220:/data/temp$ time qemu-img create -f raw disk 10g
    Formatting 'disk', fmt=raw size=10737418240 
    
    real	0m0.315s
    user	0m0.000s
    sys	0m0.004s
    
    mikal@x220:/data/temp$ time qemu-img create -f raw disk 100g
    Formatting 'disk', fmt=raw size=107374182400 
    
    real	0m0.004s
    user	0m0.000s
    sys	0m0.000s
    


    Perhaps this is because I am using ext4, which does funky extents things when allocating blocks. However, the only ext3 file system I could find at my place is my off site backup disks, which are USB3 attached instead of the SATA2 that my laptop uses. Here's the number from there:

4 Feb 2012 sness   » (Journeyer)

JavaScript Variable Scope - Stack Overflow

JavaScript Variable Scope - Stack Overflow: "I think about the best I can do is give you a bunch of examples to study. Javascript programmers are practically ranked by how well they understand scope. It can at times be quite counter-intuitive."

'via Blog this'

Syndicated 2012-02-03 23:56:00 from sness

3 Feb 2012 mattl   » (Journeyer)

Posters

                 

Download Stallman design pack version 1.0

Made a poster for a Stallman event using free software? Email your SVG or other source files to info@fsf.org for inclusion here.

Posters can be modified using Inkscape, and SVG sources are provided.

Poster designs (and cartoon RMS) under Creative Commons License, thanks to Lojoco for Stallman cartoon.

Richard Stallman photograph under Creative Commons License

Syndicated 2012-02-03 21:43:15 from Free Software Foundation

3 Feb 2012 ralsina   » (Master)

Alfajor: theory and practices

0708101901

An alfajor is, in theory, a simple thing. It's a dessert sandwich. The argentinian alfajor is usually filled with dulce de leche, which means you just can't screw it up. Even a bad alfajor is going to be good.

Yes, there are some regional alfajores filled with other stuff. Don't pay any attention to those impostors. They are hipsters wearing fake glasses they don't need. What you want is dulce de leche.

alfajor heaven

But the filling is only half of a sandwich, and a third of an alfajor. There is also the things that surround, hold and contain the notoriously sticky dulce: cookies. Some variants have tried to improve on the cookie by either going soft (cake!) or hard (Milka Mousse), but the real deal is a soft-ish cookie, not too soft (so the alfajor doesn't desintegrate) and not too hard (so it doesn't feel like eating a hockey puck).

Feliz cumpleaños

There is an impossible tradeoff, between dulce de leche and the cookie. Too much cookie, you are eating cookies. Too much dulce de leche, you may as well get a spoon and eat out of the jar (try it sometime). You want to balance, but the alfajor is walking food, it has to be edible by a 6-year old schoolkid while climbing a tree, it has to be solid enough, and not fall apart, and not cover him on melted frosting. The child has to be able to pass inspection of his hands after cleaning with just the wrapper and his own mouth.

Alfajor

The alfajor santafesino has adopted a minimax strategy, maximizing the amount of dulce de leche per amount of cookie, by using extra-thin "cookies" that are more like crackers, adding multiple layers, and making the whole alfajor thicker. I love it, but it is not for everyone.

Alfajores Cordobes

The alfajor de maicena goes in a completely different direction, having a tasty cookie that can hardly hold any dulce de leche because it's too friable. Somehow that works wonderfully as well.

Alfajorcito de Maizena

Then there is the covering. Chocolate, frosting, coconut, or nothing. Chocolate is bad in summer, melting and making you eat the alfajor from the wrapper as if it were a banana.

Ahora si... ya puedo empezar a trabajar...

But if you have no idea what an alfajor is, which one should you have? I could point you to the most sublime alfajores, which would be life-changing experiences, but I will not. If you tried those, which you can only get in out of the way places, known only to initiates, where could you go from there? It's like your first date being with Sofía Vergara. That would be just leading you into a life of disappointment.

Provecho...

So get a chocolate Havanna. Get a Cachafaz. Get a Capitán del Espacio. Get a tube of Jorgitos. And when you have done your apprenticeship, when you are an alfajorman, when you are ready. Then you will know.

Alfajores

PS: Thanks to Juan Rodriguez Monti for the idea for this post.


Syndicated 2012-02-03 21:45:42 from Lateral Opinion

3 Feb 2012 berend   » (Journeyer)

Another Zalmon ZM460 bites the dust. This one probably because the load on the server is more than 460 watts I expect. Put in a Cooler Master Silent PRO 800. And it is silent. Probably will stick with Cooler Masters for now.

3 Feb 2012 sness   » (Journeyer)

jquery - Html/Javascript: Add Attribute to an HTML Control - Stack Overflow

jquery - Html/Javascript: Add Attribute to an HTML Control - Stack Overflow: "Solution from answer below

comment = $(".showItLink").attr("comment");
...
createdDiv = CreateDiv(comment, "postComment");
"

'via Blog this'

Syndicated 2012-02-03 21:22:00 from sness

3 Feb 2012 joey   » (Master)

more on ghc filename encodings

My last post missed an important thing about GHC 7.4's handling of encodings for FileName. It can in fact be safe to use FilePath to write a command like rm. This is because GHC internally uses a special encoding for FilePath data, that is documented to allow "arbitrary undecodable bytes to be round-tripped through it". (It seems to do this by encoding the undecodable bytes as very high unicode code points.) So, when presented with a filename that cannot be decoded using utf-8 (or whatever the system encoding is), it still handles it, and using the resulting FilePath will in fact operate on the right file. Whew!

Moral of the story is that if you're going to be using GHC 7.4 to read or write filenames from a pipe, or a file, you need to arrange for the Handle you're reading or writing to use this special encoding too. I use this to set up my Handles:

  import System.IO
import GHC.IO.Encoding
import GHC.IO.Handle

fileEncoding :: Handle -> IO ()
fileEncoding h = hSetEncoding h =<< getFileSystemEncoding

Even if you're only going to write a FilePath to stdout, you need to do this. Otherwise, your program will crash on some filenames! This doesn't seem quite right to me, but I hesitate to file a bug report. (And this is not a new problem in GHC anyway.) If I did, it would have this testcase:

  # touch "me¡"
# LANG=C ghc
Prelude> :m System.Directory
Prelude System.Directory> mapM_ putStrLn =<< getDirectoryContents "."
me*** Exception: <stdout>: hPutChar: invalid argument (invalid character)

Since git-annex reads lots of filenames from git commands and other places, I had to deal with this extensively. Unfortunatly I have not found a way to read Text from a Handle using the fileSystemEncoding. So I'm stuck with slow Strings. But, it does seem to work now.


PS: I found a bug in GHC 7.4 today where one of those famous Haskell immutable values seems to get well, mutated. Specifically a [FilePath] that is non-empty at the top of a function ends up empty at the bottom. Unless IO is done involving it at the top. Really. Hope to develop a test case soon. Happily, the code that triggered it did so while working around a bug in GHC that is fixed in 7.4. Language bugs.. gotta love em.

Syndicated 2012-02-03 20:11:32 from see shy jo

3 Feb 2012 sness   » (Journeyer)

jquery - how to revertFlip of two cards that are not the same? - Stack Overflow

jquery - how to revertFlip of two cards that are not the same? - Stack Overflow: "$("#flipbox").bind("click",function(){
    var flip=true;
    $this=$(this);
    $this.flip({
        direction:'tb',
        onEnd:function(){
            if(flip){
                flip=false;
                setTimeout(function(){$this.revertFlip();},200);
            }
        }
    });
});"

'via Blog this'

Syndicated 2012-02-03 20:51:00 from sness

3 Feb 2012 proclus   » (Master)

Let's go. - #ndaa #opblackout #anonymous #haditha #antisec #fff #wuterich #utah #provo - #NDAA #F3 #NDAA #F3 #NDAA #F3 #NDAA #F3 #NDAA

Let's go. -
#ndaa opblackout anonymous haditha
#antisec fff wuterich utah provo -
#NDAA F3 #NDAA F3 #NDAA F3 #NDAA F3 #NDAA

Syndicated 2012-02-03 18:18:00 (Updated 2012-02-03 18:18:13) from proclus

3 Feb 2012 sness   » (Journeyer)

JavaScript Variable Scope - Stack Overflow

JavaScript Variable Scope - Stack Overflow: " think about the best I can do is give you a bunch of examples to study. Javascript programmers are practically ranked by how well they understand scope. It can at times be quite counter-intuitive.

// a globally-scoped variable
var a=1;

// global scope
function one(){
    alert(a);
}"

'via Blog this'

Syndicated 2012-02-03 20:33:00 from sness

3 Feb 2012 dmarti   » (Master)

Stop H.R. 3699

(Finally. I really need to move my "blog to Congress" script over to ikiwiki.)

Dear Representative Stark:

I am writing to ask you to oppose H.R. 3699, the Research Works Act.

If Rep. Darrell Issa came to you and said, "Let's give our grant recipients permission to steal taxpayer-funded equipment from the lab and resell it on the Internet," you would say he was nuts. But this is exactly what H.R. 3699 would do with those scientists' research results.

The Public Access Policy at the National Institutes of Health has been a success, and makes original papers available to health professionals, patients, and their families. Open access to research also encourages follow-up research in the public and private sectors.

H.R. 3699 would throw away these benefits for no gain. The foreign publishing companies that would benefit from this bill are not publishers in the usual sense. They do not provide the same editing and selection functions that a typical magazine does in-house. Our Federally funded researchers already do the work of reviewing and editing at no charge.

Please do what you can to stop H.R. 3699.

Sincerely,

Donald B. Marti Jr.

Syndicated 2012-02-03 15:20:06 from Don Marti

3 Feb 2012 Jordi   » (Master)

FOSDEM 2012

In a few hours, I'll be flying to Brussels with Ivan, for a new edition of FOSDEM, undoubtedly the best Free Software conference in Europe.

I'm looking forward to hang out with Debian, GNOME and #dudes people, as well as to explore some other quiet and cool spots in the city with our hosts Raül and Vir.

I'll probably be around the CrossDistro and CrossDesktop rooms most of the time, but before that I'll be at the Delirium café not long after landing in Brussels.

For someone who doesn't enjoy cold weather that much, this is going to be a special edition… oh dear, -10℃, this is fucking crazy!

I'm going to FOSDEM 2012

Syndicated 2012-02-03 13:05:00 from I still don't have a title

3 Feb 2012 etbe   » (Master)

A Computer Conference on a Cruise Ship

After LCA [1] there was a discussion about possible locations for future conferences, most of the messages in the discussion were jokes or suggestions that don’t seriously apply to LCA. So I’ll add my suggestion for conferences other than LCA.

I’ve previously written generally about the issue of conferences at sea [2]. I don’t think that LCA would be suitable for running at sea because delegates have specific expectations for LCA which are quite different to what a cruise ship can offer, so I don’t think it makes sense to change LCA which is working well as it is. However there are lots of other possible computer conferences which could suite a cruise ship.

Price

Price is a major factor in running a conference, so obviously getting a cheap cruise price is very important. Here is a link for Vacations To Go which shows cruises from the Australia/NZ region which are of at least 5 nights and cost no more than $800 [3]. The cheapest entry at this moment is $609 for 5 nights and the cheapest on a per-night basis is an 8 night cruise for $779. The cheapest cruise currently on offer which allows a conference similar to LCA is 7 nights for $699. The prices should be regarded as rough approximations as some cruises have some mandatory extra fees and the prices are quoted in US dollars and subject to currency fluctuations. Note that those prices are for dual-occupancy cabins, this can be a “double” or a “twin” configuration. Some cruise ships have cabins for 3 or 4 people that are cheaper, but if you have a cabin for a single person then the rate is almost the same as for having two people.

The price for LCA accommodation including breakfast was $78 per night for a single room or $92 for a double room. Then lunch cost a minimum of $10 and for dinner there was $80 for the penguin dinner and probably about $20 for dinner every other night. That gave an overall cost for a 6 night stay (which is probably the minimum for someone who lives further away than Melbourne) in Ballarat of 6*78+6*10+5*20+80==$708. For a double room that would be 6*92+6*10+5*20+2*80==$872.

Even if we don’t count the fact that the Australian dollar is worth more than the US dollar it is obvious that on the basis of accommodation and food two people sharing a twin cabin on a cruise ship could pay LESS than two people in single rooms at the Ballarat University dorms! Now sharing a cabin isn’t so great, but the upside is that cruise ships have excellent food and lots of other entertainment options. I previously reviewed the food on the Dawn Princess and determined that it’s better than the food I would expect to get if I spent the cost of the cruise on dinner at land based restaurants [4].

I have been led to believe that the use of ship conference facilities is typically free for any organisation that books a sufficient number of cabins. So there’s no reason why the conference admission fees should be any greater than for a land based conference.

Advantages

A common problem with conferences is finding suitable dining options. Most people want to eat with other delegates but finding restaurants that have sufficient space and which are conveniently located is difficult at best and often impossible. On a cruise ship everything is within a short walk and the restaurants are big, usually be at least one restaurant will hold 500 people. The fact that you have to reserve times for the “Main Dining Room” makes it more difficult to miss one’s colleagues.

Everything on a cruise ship is luxurious.

There are lots of good locations for BoFs, pools, cafes, restaurants, and bars. Basically the ship is filled with comfortable places for groups of people to sit down.

A cruise ship typically has a main theater with more than 700 seats – more than large enough for most conferences I’ve attended. It’s common for the size of a conference to be limited to the size of the main theater that is used, for a cruise ship this will probably be less of a problem than for most other conference venues.

Disadvantages

The first disadvantage of running a computer conference on a cruise ship is the almost total lack of net access. The costs for net access are more expensive than most delegates will pay. Probably many delegates would check their email but it wouldn’t be practical for people to download source code, browse Wikipedia, and use the Internet in other ways related to the conference. It would be practical to have mirrors of Wikipedia, the source of several distributions of Linux, and other big things of common interest.

Another possible problem is the fact that you need to book it well in advance to avoid the risk of selling out (there is no option to stay at a different hotel). An established conference with financial backing could just pay to reserve the cabins. But when starting a new conference this could be a problem.

Alcohol is rather expensive on cruise ships. But getting really drunk isn’t compatible with learning about computer science anyway.

Finally the requirement to have at least two people in a cabin for good rates is a serious issue. The upside of this is that people travelling with their SO would find that it works really well (regardless of whether the SO is a delegate or not). But anyone who’s not travelling with their SO and doesn’t want to share with a friend will have to either pay a lot more or skip the conference.

Conclusion

I think that there is a good potential for running a computer conference around the Australia/NZ region on a cruise ship. It won’t be overly expensive for delegates and the facilities that are provided are good. The trade-off for solitary travelers of having to share a cabin (or pay more) for getting much better food and leisure facilities will be appreciated by many people (and admittedly hated by some).

Some people won’t appreciate the option of swimming, but even if you consider the cruise ship to be just a floating collection of restaurants and cabins it’s still fairly luxurious and beats the heck out of most conferences I’ve attended.

If you are considering the possibility of running a conference then I think that a cruise ship should be considered. VacationsToGo.com is the best site I’ve found for cheap cruise prices, their large group department has experience handling groups of more than 500 people so I think that anyone who wants to run a new conference in/around Australia should give them a call.

Also cruise ships travel around the world, so the same thing can be done in other countries but at a different time of year. The economic factors will differ by country though. Cruise ships probably aren’t a cheap option for a conference in some other countries.

Related posts:

  1. My First Cruise A few weeks ago I went on my first cruise,...
  2. Cruises It seems that in theory cruises can make for quite...
  3. Creating a Micro Conference The TEDxVolcano The TED conference franchise has been extended to...

Syndicated 2012-02-03 11:17:16 from etbe - Russell Coker

3 Feb 2012 yeupou   » (Master)

RSS feeds: new layout for rawdog

Almost two years ago, I posted an article describing how I use rawdog, a minimalist RSS aggregator to get, on my webserver, an HTML output of my Akregator aggregated feeds. Since then, I changed the layout:

  • articles are no longer shown in four columns,
  • articles descriptions are provided directly on the page and no longer on mouse over the title,
  • there are now several indexes pages, one per day (as many necessary to reach the article limit, set to 950) using plugin dated-output.

I won’t re-describe the whole setup, the relevant files to set up this new rawdog layout are here. On my webserver, it goes in /home/rawdog, using the user rawdog (group www-data). Obviously crontab is actually /etc/cron.d/rawdog and should be edited to refer to proper local users.

I won’t harm, by the way, even if by default unnecessary (could prove useful if, by any chance, your server is configured to interpret perl .pl ou python .py files), to restrict access to rawdogs subdirectories that contains scripts, for instance by adding, for nginx, such statements in the server config:

    location /rss/scripts { deny  all; }
    location /rss/plugins { deny  all; }

Syndicated 2012-02-03 08:27:58 from # cd /scratch

3 Feb 2012 skribe   » (Journeyer)

[Video] The Fantastic Flying Books of Mr. Morris Lessmore



Tags for this post: conference lca2013 announcement video
Related posts: LCA 2007 Video: CFQ IO; ScobleShow only available as MP4?; The What-If-Microsoft-Did-The-iPod-Box video done by Microsoft; Procrastination; Very funny; The new way of converting JPEGs to MPEGs; Speed limit; Mirror traffic during the last day of LCA 2007; Avoidance behaviour, or, wanted: video RSS feeds; "Thriller" as performed by inmates of the Cebu Provincial Detention and Rehabilitation Center; Tomcat first flight tribute video; MythNetTV beta 4; Transcoding using MythTV and the PSP; Announcing early results of my survey of SMTP servers; Driving from Mountain View to Los Angeles; Couldn't determine the video directory?; Debian / Ubuntu packaging; Open Source video creation; Greg likes MySQL cluster, oh and Stewart's talk; Anyone for chicken?; Kernel report video

Comment

Syndicated 2012-01-31 15:04:00 from stillhq.com : Mikal, a geek from Canberra living in Silicon Valley (no blather posts)

3 Feb 2012 sness   » (Journeyer)

JavaScript Garden

JavaScript Garden: "JavaScript Garden is a growing collection of documentation about the most quirky parts of the JavaScript programming language. It gives advice to avoid common mistakes and subtle bugs, as well as performance issues and bad practices, that non-expert JavaScript programmers may encounter on their endeavours into the depths of the language."

'via Blog this'

Syndicated 2012-02-03 19:08:00 from sness

31 Jan 2012 elwell   » (Journeyer)

plaquewatching

Some scribblings that may be of interest to those folks over at open plaques (@openplaques) about the Scottish Film Council, now merged into 'Scottish Screen'

Googling for plaque info reveals that there was a plaque erected in 1996 in Castle Gardens, Dunoon. Later taken down as Eric Campbell came from Cheshire (Ref)

One in Aberfeldy main square unveiled in 1997? for Donald Crisp -- may also be fake (ref) [1353]

Sean Connery unveiled his own one after it had been down for 4 years (ref, ref) after the demolition of S&N plant and building of 'Springside' development [8553]

Chariots of fire at St Andrews (pic pic) [added as 8822]

Duncan Macrae in Millport (pic) [already there as 8521]

Syndicated 2012-01-31 20:23:00 (Updated 2012-01-31 20:49:25) from Elwell

31 Jan 2012 ralsina   » (Master)

Garbage Collection Has Side Effects

Just a quick followup to The problem is is, is it not? This is not mine, I got it from reddit

This should really not surprise you:

>>> a = [1,2]
>>> b = [3,4]
>>> a is b
False
>>> a == b
False
>>> id(a) == id(b)
False

After all, a and b are completely different things. However:

>>> [1,2] is [3,4]
False
>>> [1,2] == [3,4]
False
>>> id([1,2]) == id([3,4])
True

Turns out that using literals, one of those things is not like the others.

First, the explanation so you understand why this happens. When you don't have any more references to a piece of data, it will get garbage collected, the memory will be freed, so it can be reused for other things.

In the first case, I am keeping references to both lists in the variables a and b. That means the lists have to exist at all times, since I can always say print a and python has to know what's in it.

In the second case, I am using literals, which means there is no reference to the lists after they are used. When python evaluates id([1,2]) == id([3,4]) it first evaluates the left side of the ==. After that is done, there is no need to keep [1,2] available, so it's deleted. Then, when evaluating the right side, it creates [3,4].

By pure chance, it will use the exact same place for it as it was using for [1,2]. So id will return the same value. This is just to remind you of a couple of things:

  1. a is b is usually (but not always) the same as id(a) == id(b)
  2. garbage collection can cause side effects you may not be expecting


Syndicated 2012-01-31 18:08:25 from Lateral Opinion

31 Jan 2012 salimma   » (Apprentice)

More cnucnu release monitoring goodness

I just spent a few minutes clearing up Fedora’s Upstream Release Monitoring todo list — more packages will now get bugs filed against them on Bugzilla when a new version comes out, including gnucash, links (3 minor versions behind) and, surprisingly, Xaw3d, which has been resurrected on freedesktop.org after years of inactivity — we’re still packaging the old unmaintained version.

Note to self — figure out how to integrate the Python tool used by URM, cnunu, to keep track of non-Fedora software. My 0install feeds could use some release monitoring love…


Syndicated 2012-01-31 18:43:52 from Intuitionistically Uncertain » Technology

31 Jan 2012 skribe   » (Journeyer)

How to Hire a Social Media Manager

How to Hire a Social Media Manager

After determining that you need someone to handle your online presence (and you do), the next biggest issue you’re likely to face is how to find a social media manager that is right for your organisation. While it may be tempting to call the least busy Gen-Y member of your staff into your office and inform them that business’ social media is now their responsibility it’s important that you establish a clear digital and social media strategy.

Social media marketing is more than just being a digital rockstar. It takes careful crafting by a trained professional. After all, you’d never let your intern handle your traditional marketing strategy, right? (*shiver*).

Here are few quick pointers on what to look for in order to find the best person to assist you establish and maintain a strong and consistent online presence.

No Experts Allowed

The first thing you need to do is when you’re writing your employment opportunity copy is avoid using the words: guru, expert, rockstar, ninja or similar. Straight off the bat these terms will attract the wrong sort of people.

Social media is all about relationships. There are no experts. Those who claim to be are either lying or severely deluded. A social media manager should know this. They should cringe every time they’re called a guru or expert. After all, if you needed relationship advice would you go to someone that called themselves a ninja psychologist?

Once you start receiving CVs have your HR people check their online credentials. How long have they been sharing thought leadership on their blog? Do they have community management experience? When you search for their name (real or online name) do they at least appear on the first page? How many times?

The people that you’re looking for have a long established history of thought leadership and have maintained a strong and visible online presence for years. Don’t be swayed by the number of followers or fans, remember it is relationships that are important. Who are they talking to and how are they talking? Are they even in contact with other thought leaders and social influencers? If your research shows the top Power Influencers joking with and linking to them then they’re the ideal people you want. It means that they’ve managed to establish a relationship with the most innovative of social media thinkers. That their ideas are valuable to even the most thoughtful of thought leaders.

Understanding the Basics

Examine what they’re saying online. Look at their work history. During interviews. Do you see an understanding of:

  • Monitoring: Do they have a history of establishing and maintaining monitoring regimes? If you’re not monitoring for conversations beyond your usual area of influence how can you know what people are saying about you? Sometimes the conversation comes to you. Sometimes you must go to the conversation.
  • Listening: Does your prospective social media strategist understand the difference between listening and monitoring? It is not just enough to find the conversations you must understand what is being said. As with any relationship communication is the key. Listening is essential. Without listening how can you form the correct response? A social media manager needs to understand the difference.
  • ROI: Do they understand how to measure a social media return on investment (ROI)? It should never be measured in fans or followers. Ideally they should be able to express it in revenues generated or decreased expenses. They should at least understand how to determine a baseline and to extrapolate a monetary ROI. What is the ROI of their past successes?

Finding a social media manager that is able to generate and cultivate an online strategy for your organisation is not difficult. However, you and they need to understand that as with all relationships they take a significant amount of time to germinate and bear fruit. Quick fixes are rarely long-lasting or satisfying for any concerned. Your social media manger needs to understand that social media is like a marriage: a relationship that strengthens over time. One built upon trust, integrity and fidelity.

Slider image courtesy of SocialisBetter.

Syndicated 2012-01-31 08:59:28 from All About Digital & Social Media

3 Feb 2012 sness   » (Journeyer)

Jobs | Parse

Jobs | Parse: "Apply via API

Apply by sending an email to jobs@parse.com with your name, resume, projects, and anything that will help us know you as a developer. Or, for bonus points, do the following to apply instead (we'll give these applications higher priority):

Send a POST to:

https://www.parse.com/jobs/apply
with the Content-Type set to application/json, and the body as valid JSON with the following keys:

name: String with your name (required)
email: String with your email address (required)
about: String describing why you think Parse is a great fit for you (required)
urls: Array of strings with links to your resume, site, or code samples (required)
You will receive a blank 200 response on success. If you apply multiple times, we will look at your latest."

'via Blog this'

Syndicated 2012-02-03 19:07:00 from sness

31 Jan 2012 Jordi   » (Master)

GNOME Shell 3.2 in wheezy: a retrospective

When you read this, GNOME Shell 3.2 will (hopefully!) have finally transitioned to Debian’s testing suite.

Planet GNOME readers might think Debian now has outdated versions of software even in their development versions, or the distribution’s development marches at glacial pace. Wheezy GNOME users will finally have a Shell that matches the rest of their GNOME components, something that works with the Shell extensions website and much less problems and limitations compared to 3.0.2.

The reality is that GNOME 3.2’s packaging was quite ready back when it was released in late September, but a number of not-so-desirable situations held GNOME Shell, from transitioning to testing until today, four months later. So, what happened?

TL;DR: transitioning from GNOME 2 → GNOME 3 is not so easy if you want to keep testing in a sane state, and when you need to deal with dozens of indirectly related packages, for more than 10 architectures… but it shouldn’t take nearly a full year, either…

Let’s go back to the last months of 2010. Debian squeeze is in very deep freeze, and the release team and many Debian developers are focusing on squashing as many release critical bugs as they can, in order to make Debian 6.0 the great release it ended up being. The GNOME project has recently delayed the big launch of GNOME 3.0 again, until March 2011; Debian has already settled on GNOME 2.28 for its release, although it will end up cherry-picking many updates from the 2.30 release modules.

With most of the stabilization work being done, many Debian GNOME team members were at that time working on packaging very early versions of what would end up being GNOME 3.0 technology: GTK+3.0, GNOME Shell, Mutter… and some brave users even tried to use it via the experimental archive.

On February 6th, Debian 6.0 was released, and soon after, on April 6, GNOME made a huge step forward with the much anticipated release of GNOME 3.0. At that time, Debian developers were busy breaking unstable as much as they could, as it’s tradition on the weeks following a major release, and the Debian GNOME team was able to start moving some GNOME 3.0 libraries (those which were parallel-installable with their GTK+2.0 versions) to unstable.

However, moving the bulk of GNOME 3.0 to unstable wasn’t so easy. When you start doing that, you need to be sure you’re ready to have all affected packages in a “transitionable” state as soon as possible, to minimise the chances of blocking transitions of unrelated packages via the dependencies they pick up with rebuilds. All the packages involved in a transition need to be ready to go in the same “testing run”, for all supported architectures. When you’re dealing with dozens of GNOME source packages at the same time, many of which introduce new libraries, or worse, introduce incompatible APIs that affect many more unrelated packages, things get hairy, and you need a plan.

So, Joss outlined what a sane approach to this monster transition could look like. The amount of work to do was what we call “fun” on #debian-gnome. In a nutshell, we had to deal with quite a few transitions, starting with having a newer version of libnotify in unstable, and a pre-requisite for that was making sure all the packages using libnotify1 were ready to use the source-incompatible libnotify4, and this meant preparing patches and NMUs for many of our packages, as well as many others not under our control.

Before starting a controlled transition like this one, we had to get an ACK from the release team, who was busy enough handling other huge transitions like Perl 5.12, so by the time we got our own slot, we were well into Summer.

With libnotify done in August, it was time to get our hands dirty with more exciting stuff, like getting Nautilus in testing. This meant bumping a soname and requiring all packages providing Nautilus extensions to migrate to GTK+3.0, or drop the extension entirely, as you can’t mix GTK+2.0 and GTK+3.0 symbols in the same process. However, in GNOME 3.0, automounting code had moved from Nautilus to gnome-settings-daemon, so in order to not break filesystem automounting in testing for an unreasonable amount of time, both Nautilus and g-s-d needed to go in at the same time. The fun thing is that g-s-d dragged glib2.0, gvfs, gnome-control-center, gdm3, gnome-media, gnome-session and gnome-panel into the equation, so this transition needed extra planning and a lot more work than initially expected: migrating all nautilus extensions, plus ensuring all Panel applets had migrated to GTK+3.0 and the new libpanel-applet-4 interface. In short, this was the monster transition we were trying to avoid.

By the time all this mess was sorted out, GNOME 3.2 had been released, and for what users said, it was a lot better than 3.0. We still had no more than a few bits and pieces of 3.0 in testing, and we were working hard to get 3.0 in wheezy. With all the excitement around 3.2, at times it was difficult to explain outsiders why we were beating a dead 3.0 horse… Going back to our huge transition, it was just a matter of time before all the packages would be built and be ready to enter, on the same run, in testing.

A few weeks later, in early November and after several rounds of mass-bug-filings, fixing unrelated FTBFS, many NMUs, package removal requests and dealing with any possible problem that could block our transition, everything seemed to be set, and our release team magicians had everything in place for the big magic to happen. However, our first clash with the rest of Debian happened a few hours before our victory, in the form of an unannounced ruby-gnome2 upload which resetted the count for everyone. It was fun to see the release team trying all sorts of black magic in an attempt to mitigate the damage. Fortunately, after a few tries they managed to fool britney (the script that handles package transitions from unstable to testing) somehow, and the hardest part of the job was done with just one day of delay.

At last, the core of GNOME 3 was in testing, and testing users found soon after. The rest of the week saw a cascade of hate posts against GNOME 3 in Planet Debian, and personally I didn’t find that especially motivating to keep on working on the rest of GNOME bits. With experimental clear of GNOME 3.0 stuff, we finally were able to focus on packaging whatever GNOME 3.2 components were not already done, and preparing for what should be a plain simple transition of GNOME 3.0 to 3.2.

After our share of wait for a transition slot, as Perl 5.14, ICU and OpenSSL were in the line before us, and after dealing with a minor tracker 0.12 transition, we were ready for our next episode: evolution-data-server.

At first sight, we thought this would be a lot easier, but it still got a bit hairy due to evo-data-server massive soname bumps. We were given our slot just before Christmas, after a few weeks of wait for others to finish their migration rounds, and most of the pack entered wheezy a few days before the new year.

No rejoicing, though, as GNOME Shell 3.2 didn’t make it. First, we discovered it was FTBFS on kFreeBSD architectures, as NetworkManager had been promoted from optional to required, for apparently no good reason, leaving the BSD world in the cold, including our exotic GNU/kFreeBSD architectures. Now, let’s clarify that I’m a supporter of the Debian kFreeBSD architectures and was really happy to see it accepted as a technology preview in squeeze. However, as you know, GNOME Shell currently requires hardware acceleration to run, a requirement hardly met in kFreeBSD, unless you’re using a DRI1 X driver. We seriously doubted anyone had ever ran a GNOME 3 session on kfreebsd-*. However, if it didn’t build, it was a blocker bug for GNOME Shell. We considered creating different meta-packages for kFreeBSD architectures, to conclude it’d be a mess, so our awesome Michael Biebl ended up cooking up a patch that restored the ability to build the Shell without NetworkManager support.

With this out of our way, we just needed to upload Michael’s fix and watch the buildds do their part of the job. Or maybe not?

Enter Iceweasel 9.

In parallel, and with incredible bad timing, Iceweasel 9.0 was uploaded to Debian the very same day it was released by Mozilla. Again, it greeted us with a nasty surprise: yet another mozjs API change, which made gjs FTBFS, which meant our kFreeBSD fixes would be unusable until someone who knew Gjs’ internals well enough bit the bullet and worked around the new API changes. Again, Michael Biebl tried to be our saviour, but unfortunately wasn’t able to fix all the problems, so we tried to focus on plan B.

Mozilla had released a fork of the mozjs that is included in Firefox, so that embedders would have a bit less of a hard time with these recurrent API changes. This was based on Firefox 4, and was already being packaged by Ubuntu. Gjs would build using this older version just fine, so we just needed to get it in Debian as soon as possible. We just needed to find a sucke^Wvolunteer that would be inclined to maintain the beast. Only after a few weeks we managed to get Chris Coulson, the Ubuntu packager, to maintain the package directly through the Debian archive via package syncs. However, his package had only been auto-compiled in the three Ubuntu architectures, that is amd64, armel and i386. It’s late January 2012, and we’ve been fighting this war for 10 months.

After getting some help from Michael to get the new package in shape for Debian standards, we were excited to sponsor it for Chris. Duh, after a few days in the NEW fridge, it was rejected by the ftp-masters. The license statement was missing quite a few details, so I went ahead and sacrificed a few hours of my copious free time to get this sorted out. A few days later, mozjs was accepted, but the result was horrible. It was very red. mozjs didn’t build on half of our targets.

Mike Hommey was quick to file a bug and point us to the most obvious fuckups. As he had dealt with this in the past as the Iceweasel maintainer, all of these issues were fixed and patches were ready to be applied verbatim or with minimal changes to our sources. With mozjs finally built successfully (although with severe problems on ia64), we were finally able to rebuild Gjs against it, upload GNOME Shell with our kFreeBSD fixes and wait until today for this mess to be over. Whew.

I can’t say I’ve enjoyed all the stages of this ride. Some bumps on the road were clearly there to test our patience, but it has helped me get back in touch with non-leaf GNOME packaging, which was all I was doing for a while due to being super-busy lately with studies. It also reminds me of the privilege of working side by side with some awesome people, not only Joss, Michael, Sjoerd, Laurent or Gustavo, to name just a few Debian GNOME team members, but also the receptive release team members like Julien or Cyril, and NEW-processing record-breaking ftp-master Luca. Without them, we might be trying to figure out the Nautilus transition since last Summer.

We really hope GNOME 3.4 will be a piece of cake compared to this. ;)

Syndicated 2012-01-31 01:23:00 from I still don't have a title

31 Jan 2012 mentifex   » (Master)

Artificial Intelligence in Russian

1. Sun.29.JAN.2012 -- Verbs Without Direct Objects

Today in the Dushka Russian AI we begin to address a problem that occurs also in our English AI Mind. Sometimes a verb does not need an object, but the AI needlessly says "ОШИБКА" for "ERROR" after the verb. We need to make it possible for a verb to be used by itself, without either a direct object or a predicate nominative. One way to achieve this goal might be to use the jux flag in the Psi conceptual array to set a flag indicating that the particular instance of the verb needs no object.

We have previously used the "jux" flag mainly to indicate the negation of a verb. If we also use "jux" with a special number to indicate that no object is required, we may have a problem when we wish to indicate both that a verb is negated and that it does not need an object, as in English if we were to say, "He does not play."

One way to get double duty out of the "jux" flag might be to continue using it for negation by inserting the English or Russian concept-number for "NOT" as the value in the "jux" slot, but to make the same value negative to indicate that the verb shall both be negated and shall lack an object, as in, "He does not resemble...."

During user input, we could have a default "jux" setting of minus-one ("-1") that would almost always get an override as soon as a noun or pronoun comes in to be the direct object or the predicate nominative. If the user enters a sentence like "He swims daily" without a direct object, the "jux" flag would remain at minus-one and the idea would be archived as not needing a direct object.

2. Sun.29.JAN.2012 -- Using Parameters to Find Objects

While we work further on the problem of verbs without objects, we should implement the use of parameters in object-selection. First we have a problem where the AI assigns activation-levels to a three-word input in ascending order: 23 28 26. These levels cause the problem that the AI turns the direct object into a subject, typically with an erroneous sentence as a result.
In RuParser, let us see what happens when we comment out a line of code that pays attention to the "ordo" word-ordervariable. Hmm, we get an even more pronounced separation: 20 25 30.

Here we have a sudden idea: We may need to run incoming pronouns through the AudBuffer and the OutBuffer in order unequivocally to assign "dba" tags to them. When we were using separate "audpsi" concept-numbers to recognize different forms of the same pronoun, the software could pinpoint the case of a form. We no longer want different concept-numbers for the same pronoun, because we want parameters like "dba" and "snu" to be able to retrieve correct forms as needed. Using the OutBuffer might give us back the unmistakeable recognition of pronoun forms, but it might also slow down the AI program.

Before we got the idea about using OutBuffer for incoming pronouns, in the OldConcept module we were having some success in testing for "seqneed" and "pos" to set the "dba" at "4=acc" for incoming direct objects. Then we rather riskily tried setting a default "dba" of one for "1=nom" in the same place, so that other tests could change the "dba" as needed. However, we may obtain greater accuracy if we use the OutBuffer.

3. Mon.30.JAN.2012 -- Removing Engram-Gaps From Verbs

Yesterday in the Russian AI we experimented rather drastically with using the "ordo" counter to cause words of input to receive levels of activation on a descending slope, so that the AI would be inclined to generate a sentence of response starting with the same subject as the input. We discovered that the original JavaScript AI in English was not properly keeping track of the "ordo" values, so we made the simple but drastic change of incrementing "ordo" only within OldConcept and NewConcept, both of which are modules where an incoming word must go through the one or the other.

Today we have sidetracked into correcting a problem in the VerbGen module. After input with a fictitious verb, VerbGen was generating a different form of the made-up verb in response, but calls to ReEntry were inserting blank aud-engrams between the verb-stem and the new inflection in the auditory channel. By using if (pho != "") ReEntry() to conditionalize the call to ReEntry for OutBuffer positions b14, b15 and b16, we made VerbGen stop inserting blank auditory engrams. However, there was still a problem, because the AI was making up a new form of the fictitious verb but not recognizing it or assigning a concept-number to it as part of the ReEntry process.


31 Jan 2012 mjg59   » (Master)

The ongoing fight against GPL enforcement

GPL enforcement is a surprisingly difficult task. It's not just a matter of identifying an infringement - you need to make sure you have a copyright holder on your side, spend some money sending letters asking people to come into compliance, spend more money initiating a suit, spend even more money encouraging people to settle, spend yet more money actually taking them to court and then maybe, at the end, you have some source code. One of the (tiny) number of groups involved in doing this is the Software Freedom Conservancy, a non-profit organisation that offers various services to free software projects. One of their notable activities is enforcing the license of Busybox, a GPLed multi-purpose application that's used in many embedded Linux environments. And this is where things get interesting

GPLv2 (the license covering the relevant code) contains the following as part of section 4:

Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License.

There's some argument over what this means, precisely, but GPLv3 adds the following paragraph:

However, if you cease all violation of this License, then your license from a particular copyright holder is reinstated (a) provisionally, unless and until the copyright holder explicitly and finally terminates your license, and (b) permanently, if the copyright holder fails to notify you of the violation by some reasonable means prior to 60 days after the cessation

which tends to support the assertion that, under V2, once the license is terminated you've lost it forever. That gives the SFC a lever. If a vendor is shipping products using Busybox, and is found to be in violation, this interpretation of GPLv2 means that they have no license to ship Busybox again until the copyright holders (or their agents) grant them another. This is a bit of a problem if your entire stock consists of devices running Busybox. The SFC will grant a new license, but on one condition - not only must you provide the source code to Busybox, you must provide the source code to all other works on the device that require source distribution.

The outcome of this is that we've gained access to large bodies of source code that would otherwise have been kept by companies. The SFC have successfully used Busybox to force the source release of many vendor kernels, ensuring that users have the freedoms that the copyright holders granted to them. Everybody wins, with the exception of the violators. And it seems that they're unenthusiastic about that.

A couple of weeks ago, this page appeared on the elinux.org wiki. It's written by an engineer at Sony, and it's calling for contributions to rewriting Busybox. This would be entirely reasonable if it were for technical reasons, but it's not - it's explicitly stated that companies are afraid that Busybox copyright holders may force them to comply with the licenses of software they ship. If you ship this Busybox replacement instead of the original Busybox you'll be safe from the SFC. You'll be able to violate licenses with impunity.

What can we do? The real problem here is that the SFC's reliance on Busybox means that they're only able to target infringers who use that Busybox code. No significant kernel copyright holders have so far offered to allow the SFC to enforce their copyrights, with the result that enforcement action will grind to a halt as vendors move over to this Busybox replacement. So, if you hold copyright over any part of the Linux kernel, I'd urge you to get in touch with them. The alternative is a strangely ironic world where Sony are simultaneously funding lobbying for copyright enforcement against individuals and tools to help large corporations infringe at will. I'm not enthusiastic about that.

comment count unavailable comments

Syndicated 2012-01-30 23:40:50 from Matthew Garrett

3 Feb 2012 sness   » (Journeyer)

Numeric Javascript

Numeric Javascript: "Numeric Javascript is a library for numerical computations in Javascript. You can write Javascript programs that manipulate matrices, solve linear problems, find eigenvalues and solve optimization problems in the browser using Numeric Workshop or in your own web pages by downloading numeric.js. You can also use Numeric Javascript outside the browser in any Javascript environment."

'via Blog this'

Syndicated 2012-02-03 19:07:00 from sness

30 Jan 2012 ralsina   » (Master)

Sacrifices & Rock & Roll

Sorry: english only because my kbd is acting up an typing is a chore.


Here I am, writing in a place of evil so deep they charge you $56 (that's pesos) for a tiny sandwich and a bottle of water: the Gianni & Vittorio café at Córdoba Airport.

It's like Mordor, except the water is kinda-sorta-slightly-cold, and I carry no rings. And there is very little lava. But the evil... the evil is dense, as it can only be at airports, Minas Morgul, and perhaps the choripán place near Lisandro de la Torre station (which I strongly recommend).

But why do I do it? Because I have already failed. I will not post everyday this year. I may not even be close. But I will post as much as I can. And I promise it won't be filler about why I did not do a real post.

So, onto the meat of this post we go.

It's inevitable that airports will have expensive and bad food. It will be expensive because there are a limited number of sellers, and getting to be one of them is expensive. Since they can charge whatever they want, they have no incentives to provide quality or service.

Plus, they own a captive customer base, since you are locked there, and there is no place to go outside the airport etiher.

That is classic government-mandated market distortion, with the airport management as the government, and you playing the role of you. This kind of clear examples are good because they show capitalism and free market advocates actually have a decent point when they remark on the defects of imperfect markets.

OTOH, I don't see any communists around here oppressing me, I see only happy capitalists taking my money.

PS: it seems there was a tornado here today.


Syndicated 2012-01-30 22:29:28 from Lateral Opinion

30 Jan 2012 dyork   » (Master)

Node.js Project Leader Ryan Dahl Steps Down To Work On Research Projects

Node dot js logoCiting a desire to work on research projects after three years of focused work, Node.js creator and project leader Ryan Dahl sent out a message today that he will be “ceding
my position as gatekeeper to Isaac Schlueter”.
He stated:

I am still an employee at Joyent and will advise from the sidelines but I won’t be involved in the day-to-day bug fixes. Isaac has final say over what makes it into the releases. Appeals for new features, changes, and bug fixes should now be directed at him.

I’ve been a huge fan of Node.js and if you look at the tag cloud in the right sidebar you’ll see that “Node.js” stands out with the largest lettering and denoting the most posts written here. My post on “Node.js, Doctor’s Offices and Fast Food Restaurants – Understanding Event-driven Programming” remains one of the most visited posts on this blog. And I continue to routinely find new and interesting ways to work with node.js. I also learned a great bit from the various videos of Ryan’s presentations (such as this presentation).

Kudos to Ryan for creating Node.js and then taking it as far as he has. I can completely understand how after three years of rather intense work he wants and needs to pursue a different path. His departure is also a huge statement about the power of the Node.js community – and also of Joyent as a sponsor and employer of so many key Node.js developers – to continue the development of the language without the creator at the helm.

As just a random developer out there using Node.js, I certainly thank Ryan for all he’s done and wish him all the best in his new role!


UPDATE: Jolie O’Dell over at VentureBeat also has a nice post out about Ryan Dahl’s stepping down.

Syndicated 2012-01-30 21:26:24 from Code.DanYork.Com

30 Jan 2012 proclus   » (Master)

Protect Biodiversity in Our National Forests

We need your help now to secure a future for biodiversity in America's national forests.

Last week, after three previous attempts failed, the U.S. Forest Service released a final draft of its National Forest Management Act regulations, which govern the management of the entire, 193-million acre national forest system.

While it improves on past rules, the new rule comes up short on fish and wildlife protections: A previous requirement that the Forest Service maintain viable populations of fish and wildlife on national forests has been weakened and made discretionary.

Please join us in telling the Forest Service to strengthen the rule to make protecting fish and wildlife a requirement, not just a possibility, in our national forests.

Take action here: http://action.biologicaldiversity.org/p/dia/action/public/?action_KEY=9331

Syndicated 2012-01-30 20:04:00 (Updated 2012-01-30 20:04:09) from proclus

30 Jan 2012 berend   » (Journeyer)

Frequently get this:


$ evince
Maximum number of clients reachedCannot parse arguments: Cannot open display:

Why does Google not have an answer?

30 Jan 2012 proclus   » (Master)

Anonymous And The War Over The Internet


#anonymous #opblackou­t #opmegaupl­oad #antisec #opopd #cabincr3w



I'd be interested in hearing what the community thought of this article.



Regards,

proclus

http://www­.gnu-darwi­n.org/
Read the Article at HuffingtonPost

Syndicated 2012-01-30 17:40:00 (Updated 2012-01-30 17:40:42) from proclus

1 Feb 2012 mattl   » (Journeyer)

GNU spotlight with Karl Berry (January 2012)

New GNU releases this month:

In addition to the usual releases, a new installment of the Lilypond Report has been published. It includes release news, an interview, Prelude #1 in Scheme, and more.

To get announcements of most new GNU releases, subscribe to the info-gnu mailing list. Nearly all GNU software is available from ftp.gnu.org, or preferably one of its mirrors. You can use the URL ftpmirror.gnu.org/ to be automatically redirected to a (hopefully) nearby and up-to-date mirror.

Several GNU packages are looking for maintainers and other assistance. There's also a general page on how to help GNU, and information on how to submit new packages to GNU.

As always, please feel free to write to me, karl@gnu.org, with any GNUish questions or suggestions for future installments.

Syndicated 2012-02-01 04:06:57 from Free Software Foundation

30 Jan 2012 mattl   » (Journeyer)

GNU Project renews focus on free software in education

The new effort is based at http://www.gnu.org/education.

The newly formed GNU Education Team is being led by Dora Scilipoti, an Italian free software activist and teacher. Under her leadership, the Team has developed a list of specific goals to guide their work:

  • Present cases of educational institutions around the world who are successfully using and teaching free software.

  • Show examples of how free programs are being used by educational institutions to improve the learning and teaching processes.

  • Publish articles on the various aspects involved in the use of free software by educational institutions.

  • Maintain a dialogue with teachers, students and administrators of educational institutions to listen to their difficulties and provide support.

  • Keep in contact with other groups around the world committed to the promotion of free software in education.

GNU and its host organization, the Free Software Foundation (FSF), emphasize that free software principles are a prerequisite for any educational environment that uses computers:

Educational institutions of all levels should use and teach free software because it is the only software that allows them to accomplish their essential missions: to disseminate human knowledge and to prepare students to be good members of their community. The source code and the methods of free software are part of human knowledge. On the contrary, proprietary software is secret, restricted knowledge, which is the opposite of the mission of educational institutions. Free software supports education, proprietary software forbids education.

In an article at http://fsf.org/blogs/community/gnu-education-website-relaunch, Scilipoti adds insights about the project's organizing philosophy, current contributors, and progress so far. Of her basic motivation for being involved, she says, "As a free software advocate and a teacher, I always felt that the GNU Project needed to address the subject specifically and in depth, for it is in the education field that its ethical principles find the most fertile ground for achieving the goal of building a better society."

In her article, Scilipoti also highlights some of the free software success stories from around the world, especially Kerala, India, where the government has migrated over 2,600 of its public schools to free software.

While the Education Team has already compiled a collection of useful materials, they are also looking for more volunteer contributors. People who want to help, or who have information about instructive examples of existing use of free software in schools, should contact education@gnu.org.

"Education really is one of the most fundamental areas we need to focus on to achieve real social change," said Free Software Foundation executive director John Sullivan. "We need to be acknowledging and assisting schools that are doing the right thing, and helping those who aren't yet on board understand why those giveaway Microsoft Office, iPad, and Kindle deals aren't so great for classrooms after all. We're very thankful to all of the Team members for stepping up to meet this challenge. I hope others will be inspired by their work and join the effort."

The Education Team has also been working closely with GNU's Translation Team to make the new materials available in as many languages as possible. People interested in helping with the translation component of the project should see the information at http://www.gnu.org/server/standards/README.translations.html.

About the Free Software Foundation

The Free Software Foundation, founded in 1985, is dedicated to promoting computer users' right to use, study, copy, modify, and redistribute computer programs. The FSF promotes the development and use of free (as in freedom) software — particularly the GNU operating system and its GNU/Linux variants — and free documentation for free software. The FSF also helps to spread awareness of the ethical and political issues of freedom in the use of software, and its Web sites, located at fsf.org and gnu.org, are an important source of information about GNU/Linux. Donations to support the FSF's work can be made at http://donate.fsf.org. Its headquarters are in Boston, MA, USA.

About Free Software and Open Source

The free software movement's goal is freedom for computer users. Some, especially corporations, advocate a different viewpoint, known as "open source," which cites only practical goals such as making software powerful and reliable, focuses on development models, and avoids discussion of ethics and freedom. These two viewpoints are different at the deepest level. For more explanation, see http://www.gnu.org/philosophy/open-source-misses-the-point.html.

About the GNU Operating System and Linux

Richard Stallman announced in September 1983 the plan to develop a free software Unix-like operating system called GNU. GNU is the only operating system developed specifically for the sake of users' freedom. See http://www.gnu.org/gnu/the-gnu-project.html.

In 1992, the essential components of GNU were complete, except for one, the kernel. When in 1992 the kernel Linux was re-released under the GNU GPL, making it free software, the combination of GNU and Linux formed a complete free operating system, which made it possible for the first time to run a PC without non-free software. This combination is the GNU/Linux system. For more explanation, see http://www.gnu.org/gnu/gnu-linux-faq.html.

Media Contacts

John Sullivan
Executive Director
Free Software Foundation
+1 (617) 542 5942
campaigns@fsf.org

###

Syndicated 2012-01-30 16:48:43 from Free Software Foundation

30 Jan 2012 yeupou   » (Master)

Using RAM for transient data

When a system have lots of I/O, trouble may arise. If an optical hard drive is über-solicited, quite easily you may get many kinds of failures, high CPU load, just because of I/O errors. In such case, using RAM as disk, aka RAM disk, may be a good option, as it allows way more I/O than an optical hard drive. Solid State Drive (SSD) addresses partly this issue, but it seems to, still, have way higher access time and latency than RAM. RAM disk, on the other hand,  is non persistent (unlike SSD, though), quite an annoying drawback so even if you write some scripts to save data, you will loose some in case of power failure.

RAM disk is, actually, especially appropriate for temporary data, like /var/run, /var/lock or /tmp. Linux >= 2.4  supports tmpfs, some kind of RAM disk, that (as far I understand) does not reserve blocks of memory (meaning: it does not matter if you have a big tmpfs, unused memory in the tmpfs will still be available to the whole system).

Most of my computers have more than 1 Gb RAM. And, most of the time, they never use the Swap space. For instance (relevant lines are si and so, as swap in, swap out):

bender:$ vmstat
 procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa
 0  0      0 4146984 674704 1309432    0    0     6     9    3   34  2  1 97  0

nibbler:$ vmstat
procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa
 0  0      0 862044  23944  84088    0    0    10     0   42   22  0  0 99  0

moe:$ vmstat
procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa
 1  0      0 280552 166884 1297376    0    0     7    58   73   12  8  2 90  1

So they are good candidates to use tmpfs whenever possible. Do so with Debian GNU/Linux is fast-forward. Just edit /etc/default/rcS as follows (for /var/run & /var/lock):

RAMRUN=yes
RAMLOCK=yes

and add, in /etc/fstab (for /tmp):

tmpfs             /tmp     tmpfs     defaults    0    0

Next time you boot, diskfree should provide you with something like:

  $ df
Filesystem           1K-blocks      Used Available Use% Mounted on
tmpfs                  1033292         0   1033292   0% /lib/init/rw
varrun                 1033292       648   1032644   1% /var/run
varlock                1033292         0   1033292   0% /var/lock
tmpfs                  1033292         4   1033288   1% /dev/shm
tmpfs                  1033292         0   1033292   0% /tmp

Syndicated 2012-01-30 13:57:36 from # cd /scratch

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!

Advogato User Stats
Users14017
Observer9896
Apprentice744
Journeyer2346
Master1027

New Advogato Members

26 Jan 2012 Sydius (Observer)
22 Jan 2012 saj (Observer)
4 Jan 2012 danstowell (Journeyer)
21 Dec 2011 Michaelthood (Observer)

Recently modified projects

1 Feb 2012 Xadrian
1 Feb 2012 djbdoc2man
26 Dec 2011 Warp Life
20 Dec 2011 DougNassaurWatch
12 Dec 2011 usb4java
30 Nov 2011 gzochi
20 Nov 2011 Logos
20 Nov 2011 Mathomatic
2 Nov 2011 blindforthcoming
26 Sep 2011 deltasql
7 Sep 2011 Ultrastudio.org
27 Aug 2011 sxdatadump2lua
4 Aug 2011 PHPortal
4 Aug 2011 Waverous Lambdamoo
10 Jul 2011 PICle

New projects

26 Dec 2011 Warp Life
26 Sep 2011 deltasql
27 Aug 2011 sxdatadump2lua
10 Jul 2011 PICle
18 Jun 2011 passgen
15 Jun 2011 Mathomatic
11 Apr 2011 Bazar Garum
5 Apr 2011 ERDialog
31 Mar 2011 r6rs-protobuf
19 Feb 2011 jSoundz
7 Feb 2011 usb4java
7 Feb 2011 webdruid
7 Feb 2011 arc
7 Feb 2011 djbdoc2man
4 Jan 2011 Android Units