s/Firefox/Chrome/g

Google Chrome BallA few weeks ago I decided to give Chrome a good ride on my main machine, a Debian Linux unstable. I use it a lot, every day, and I of course use my browser during a large portion of my time in front of it. I’m a long time Firefox fan and when I’ve heard and read other people converting I’ve always thought it’d be hard for me due to my heavy use of certain plugins, old habits and so on.

(Of course, in Debian lingo the browsers are actually called Chromium and Iceweasel, but I’ve decided to ignore that fact in this post.)

Here’s the story on how it went, what’s good with Chrome and what’s lacking in comparison to Firefox. As compared on my Linux box here.

Obvious benefints:

  • Less wasted window/screen estate. The tabs up in the window title is brilliant.
  • Faster. It’s generally faster in almost every aspect, but what’s most noticeable is when starting it.
  • Less memory hungy. At times I’ve found my Firefox installation to spend an annoying amount of my precious RAM (I have 4GB installed) and even though I would expect Chrome’s a process-per-tab concept to be more expensive memory wise, I’ve had less such problems with it.
  • The unified address/search bar, back to how Firefox once had it, is only sensible.
  • In my Firefox I’ve had two minor quirks for a while that have annoyed me: 1) when I start to search for something, I get a few seconds “freeze” immediately after I’ve started searching. Like I enter a few letters, waaaaaaait, then I can continue. This is certainly nothing life-threatening or something I can’t live through but it is annoying. 2) I occasionally get problems with flash video playbacks that the video pause or studder, most often a few seconds into it. Chrome has not given me these quirks.
  • Mailman! I administrate more than 20 mailing lists on the same host (cool.haxx.se) using mailman. Each list has iFirefox Ballts own URL and its own password. But Firefox just cannot remember them separately!!! These are pages I visit several times each day to ack or reject posts etc. Chrome remembers the passwords excellently for all the individual lists. This makes me a much happier person.

Problems I didn’t get:

  • The adblock version for Chrome is as good. I’m not sure exactly how well they compare but I haven’t noticed anything that’s given me reason to get annoyed.
  • The resizeable text edit areas in Chrome is excellent and removes the need for some of the fancier edit plugins in Firefox.

Things still nicer in Firefox:

  • I love the plugin to force unknown content-types to still be displayed by the browser. Far too many resources are still done using the wrong one and Chrome’s only option is to save it locally and then force me to run a local tool to display the file. Sure, it works fine but when I want to do that on many files it gets tedious.
  • In general Chrome, is a bit worse at handing content it doesn’t know about. I’ve managed to fiddle with my /etc/mozpluggerrc so that at least PDFs are now saved instead of saying “missing plug-in” but so far I’ve failed to get evince to display them directly. Even if it still is possible to make it happen, it is certainly a bit quirky to have to manually edit a text file to make it happen…

Conclusion

I’ll be running Chrome here now for a while!

Future transports

On Sunday morning during FSCONS 2010, in the room “Torg 4 South” I did a 30 minute talk about a few future, potentially coming network protocols for transport. A quick look at the current state, some problems of today and 4 different technologies that have been and are being developed to solve the problem.

I got a fair amount of questions and several persons approached me afterwards to make sure they got a copy of my slides.

The video recording is hopefully going to be made available later on, but until then you can read the slides below and imagine my Swedish  accent talking about these matters!

Future transports

You can also download the slides directly as a PDF.

FSCONS 2010 day 2

[continued from FSCONS 2010 day 1]

With the previous night’s social event ending fairly late and involving a fair amount of good beers, it was nice to be able to sleep in a bit and have one of those great hotel breakfasts in a slow and relaxed manner.

I then checked out from the hotel and walked over to the venue, this time not as mislead by google maps’ directions as I was yesterday.

The economics of open innovation and FOSS. was the first session I attended and the talker Karthik Jayaraman did a good job of explaining and showing how things can happen fast and why and he did some interesting predictions of the future.

I followed Kathik’s talk in the same room with my 30 minute session Future transports in which I discussed and explained a bit about transport protocols today and what might come tomorrow.

Glyn Moody is a bit of a celebrity (he has for example written several books) and you can tell he’s done this before. He’s an excellent speaker and as he’s a native English person he has a bit of an edge compared to most speakers at this conference. Mr Moody got the biggest room at FSCONS filled up to the last available chair and there were still a bunch who had to sit on the floor.

Glyn talked about Ethical Monopolies, the history of patents and copyright and how they have changed and how they today no longer are even close to having the purposes they were created for.

He advocates that we stop talking about “Intellectual Properties” but instead refer to them as “Intellectual government-granted monopolies” as that is a much better use of words when these subjects are brought up. The ordinary person thinks people should be able to keep properties, but would in many cases object to (more) monopolies.

The last session I got to enjoy this year was Mikael von Knorring’s “Who are the free users” which did present a good view of things but I wasn’t very focused during the talk so I’ll refrain from judging it in any direction.

I took a last stroll over to the cafeteria area where I found some friends, said hello and good bye and then I took off towards the train station and my 3+ hours train ride back to Stockholm on the other coast of Sweden. (It could be noted that I left early, there were at least two session slots that I missed.)

My head is packed with impressions. I met lots of great people and friends, both old and many new ones. We had awesome discussions and I hope at least some of the ideas that were brought up will be turned into reality. I will post more about those here if/when they happen.

The future for Free Software (in the Nordic region) is bright!

Scalable application layer transfers

At FSCONS 2010 I had the pleasure to do a talk about how to make your client-side networking applications really scale when upping the number of simultaneous connections. Including some details that libcurl will support you all the way!

My talk was named “Scalable application layer transfers” and the slides from it is available online. See below. Hopefully the video recording of it will appear later and I’ll post a  follow-up then. A little extra bonus material as background would be my poll vs select vs event-based article.

As I mentioned in a previous post, the room was shock full when I started preparing my equipment for the talk since the session before me was a keynote, but by the time I actually starter presenting there were only the limited set of hardcore geeks left.

In the FSCONS program there were several talks over the weekend about women in FOSS and so on, while I on the other hand certainly only contributed to enforcing the stereotypes by being white, male, middle-aged, very techy and I delivered my two speeches for audiences in which I believe not a single woman attended. Whether I am part of the problem or the solution we can discuss in a separate post later on… 🙂

FSCONS 2010 day 1

07:02: The alarm of my mobile never rang, because I was already up. I got to play with my two kids a while before the taxi arrived to pick me up at 07:30.

The X2000 train from Stockholm to Göteborg took off exactly on schedule and we were off. I learned that the on-board Internet service wasn’t possible to sign on to with Chrome but I had to fire up my good old Firefox for it. Going with first class X2000 offer free Internet all the way, and free coffee. Two of my favorite frees.

The train arrived only 10 minutes late in Gothenburg. I took a taxi over to my hotel, checked in, put my smaller laptop in my backpack and walked over to the FSCONS venue.

After having had lunch and caught up with some friends, I sat down in the big audience listening to the presentation about the Inhana project, by Kyrah. Interactive storytelling and about helping female artists in Syria to play/work with technology in the form av Arduino boards.

Kyrah had the room full. Not that many remained when I entered the stage after her and did my talk on scalable application layer transfers.

I followed up with a cup of coffee after some private discussions on SCTP and how to do fast transfers in the Tor project and then I headed towards the talk about data structures in the Linux kernel by Allesandro Rubini.

Mr Rubini is a long-time involved Linux kernel hacker (and well known co-author of the Linux Device Drivers bible) and in a very casual and effective style he taught us how we can use regular Linux code for lists and trees in a GPL licensed project and how the clever container_of macro works. To me, its biggest drawback is that it relies on a gcc-specific feature: typeof(), but otherwise it is a beautiful craftsmanship.

Allesandro brought down the biggest spontaneous applause when he responded to someone’s question “but couldn’t you also do this using templates in C++?” by suitably and appropriately bashing C++…

.Allesandro Rubini

Anders Arnholm followed along in the embedded track and he talked about using Linux in the automotive world and I think many of us thought the best part of his talk was the numbers and comparisons he had when trying different flash file systems to increase boot performance and really cut down startup time to a minimum. The initial kernel startup time was 6 something seconds when using JFFS2 and they managed to get down to below 200 milliseconds with the use of the AXFS (Advanced XIP Filesystem, where XIP is short for execute in place).

Anders Arnholm

boot-times-axfs

… after Anders’ talk I followed the crowds, got a seat in a bus and we were transported over to the social event. I mentioned a little bit about that in my previous post, the award for me.

My FSCONS 2010 day 2 entry will be posted within shortly.

Bjarni got the award 2010

The Nordic Free Software Award 2010 was given the Icelandic hacker Bjarni Rúnar Einarsson.

The formal handing over of the prize was done during the social event at FSCONS 2010, with hundreds of free software hackers attending and a lot joy. Bjarni was also immediately invited to participate in the NFSA jury for next year, in an attempt to start a tradition of getting former winners on the jury.

NFSA-award

I’m happy to say that I served in the jury for the award this year. We were a bunch of Nordic free software enthusiasts in there, involving several previous winners. The winner this year, Bjarni Rúnar, was selected by us having a nomination process in which we received I believe 11 names and then a subsequent voting within the jury.

I did the press release draft and Karsten from FSFE polished it into something much better. I think that will go out early this week and I am now even mentioned as press contact for Sweden about the award. The FSFE posted their announcement, including my last name wrongly spelled…

The social event then went on with lots of free software talks with cool people from the entire Nordic region, and I certainly met a whole bunch of friendly hackers I didn’t know before. It was also great fun to run into Giuseppe, the current wget maintainer.

(The picture might just be a fake.)

The award for me

I was asked what the Nordic Free Software Award that I received last year meant to me. This was my response that I now repost here for the public to see:

Daniel WinnerTo me, the NFSA is a recognition from my own kind. A really big thumbs-up from within my own team. From fellow hackers who know.

In a world where we spend lots and lots of time alone in front of screens during long dark hours, where most of what you do is just silently pushed into source code repositories or consumed by eager downloaders distributed all over the world, getting that kind of positivism is invaluable.

I found it to not only be a very big ego boost, but it also really ignited my desire to do more, to reach further and to prove that my receiving of the award is the beginning and not the end of what I am set to do in our free software world. In my particular case it was a primary factor behind the start of the Foss-sthlm network that I co-started not long after I got the award. I’ve pushed foss-sthlm forwards during this year with several meetings with a hundred or more attendees.

Getting weird looks from outsiders or a thank you from the occasional user is fun, but getting an award from people who actually know what you might have done and what it takes to do it, is priceless.

I’m perfectly aware that I am the super-nerd. I’m not the social guy. I’m not the person who unite crowds or inspire teams to create miracles. I’m a software developer and I design and create code. Lots of it. I debate technical details, protocols and choices on mailing lists. Lots of them. I share as much as possible of all that of course and I’m thrilled that what I do is considered this good and is appreciated to this extent.

Everyone doing volunteer work wants to get recognition for their efforts. I got it. Thank you!

During the social event at FSCONS 2010 when we announced the winner of this year and handed him his prizes, I was also given the prize I never received last year because I wasn’t around at the actual award ceremony then. And of course, these guys love puns so…

Award prizes

From the left: a box with rocks (for my work on Rockbox), a transformer toy (I don’t quite recall the reason for that) and curlers (for my work on curl). Click on the image to see it in full resolution, it is taken with my crappy mobile camera.

Living With Open Source

.SEAs a session during the Internetdagarna conference (orginized by .SE), Björn Stenberg, Daniel Melin and I joined up to talk about open source with the title “Living With Open Source” (“Att Leva med Öppen Källkod” in the language of the brave: Swedish) on October 27. We did a 90 minute session split up between the three of us. The session was in Swedish and it was recorded so I expect that it will be made available online soon for those who are curious but didn’t attend.

Bjorn Stenberg during "att leva med Öppen kallkod"

Björn (on the picture above) started off by talking about how to work with Open Source as a user when using Open Source components. How to deal with changes, sending upstream, the cost of keeping changes private etc.

Talare - Att leva med öppen källkodDaniel Melin continued and talked about open source licensing. It is quite clearly an area that people find tricky and mysterious, judging from the many questions that followed. I think large parts of the audience wasn’t very advanced or well versed into open source details so then of course there is a lot to learn and to talk about. I think we all felt that we tried to cover quite a lot that together with the questions was hard to fit within the given time.

I ended our triplet by talking about open source from a producer’s viewpoint, how we view things in a typical open source project and I used a lot of details and factual points from the cURL project.

The audience consisted of perhaps 50 people. We had a rather nerdy subject and we had tough competition from five other parallel sessions, with some of them featuring Internet and other local celebrities.

Over all, I think we did good. The idea that held our three talks together I think was fine, we kept the schedule pretty good, the audience seemed to enjoy it and I had a great time. And we got a really nice lunch afterwards!

git, patents, meego and android

dotse-logoAt this Tuesday afternoon, almost 100 people apparently managed to escape work and attend foss-sthlm’s fourth meeting. This time graciously sponsored by .SE who stood for the facilities, the coffee etc. Thank you .SE! Yours truly did his best to make it happen and to make sure we had a variety of talks by skilled people and I think we did good this time as well! This meeting took place at the same time the big Internetdagarna conference had their 6(!) parallel tracks in the building just next to ours, so it was also rather fierce competition for attention.

Robin with git

Robin Rosenberg started off the sessions by telling us about git and related dives into JGit, EGit, gerrit, code reviews and Eclipse. Robin is a core developer in the EGit/JGit projects. While I think I know at least a little git already, Robin provided an overlook over several different things in a good way. (It should be noted that Robin was called in very late in the game due to another talker having to drop out.)

As a side-note, I will never cease to be amazed by the habit in Java land to re-implement everything in “pure Java” instead of simply wrapping around the existing code/tools and leveraging what already exists and is stable…

Jonas with patents

Jonas Bosson spoke about the dangers with software patents and how they are not good, they’re hindering innovation and cost a lot of money for everyone involved. He also pledged the audience to join FFII to help the cause. You can tell Jonas is quite committed to this subject and really believes in this! And quite frankly, I don’t think a lot of people in this surrounding would argue against him…

Andreas with MeegoMeeGo

Andreas Jakl, just arrived from a rainy Helsinki, then told us (in English while all the other talks were in Swedish) about how to develop stuff with Qt for Symbian, Meego or desktop using the same tools. He showed us the latest fancy GUI builder they have called Qt Quick and how they use QML to do fancy things in a fast manner. He also managed to show us the code running in simulator and on device. Quite impressive. Andreas is a very good speaker and did a very complete session. As a bonus point, he used ‘haxx.se’ as test site for demonstrating his little demo build and of course you can’t help loving him more then? 😉

Johan with Android

Android

Johan Nilsson started off just after the coffee break with educating us how you can do push stuff from your server applications to your mobile device. How it works and how to control that in various way. Johan’s presentation was into details, in a way at least I really appreciated it, and his (hand drawn on paper then scanned) graphics used in the presentation were stunning! The fact that Johan sneaked in a couple of curl command lines of course gave him bonus points in my mind! 😉

Henrik with FribidFribid

Henrik Nordström took the stage and briefed us on the status of the Fribid project, which is a very Swedish-centric project that works on implementing full Linux support for “bankid” which is a electronic identification system established by a consortium of Swedish banks and is used by a wide range of authorities and organizations these days. The existing Linux client is poor (and hard to get working right), closed source, saves data encrypted with private hidden keys etc.

Food, Talk, Tablets

We_Tab-140-Motiv_4-3

In the restaurant after the seminaries, we gathered in a basement with beer in our glasses and chili on our plates and there was lots of open source and foss talks and we had a great time and good drinks. Two attendees brought their new tablets, which made us able to play with them and compare. the Android Samsung Galaxy Tab and the German Meego based WeTab.

Samsung Galaxy TabTo me there really wasn’t any competition. The Galaxy Tab is a slick, fast and nice device that feels like a big Android phone and it’s really usable and I could possibly see myself using it for emails and browsing. It was a while since I tried an Ipad but it gave about the same speed impression.

The WeTab however, even if it runs a modified Meego that isn’t “original” and that might suffer from bugs and what not, was a rough UI that looked far too much like my regular X Window system put in a touch device. For example, and I think this is telling, you scroll a web page down by using the right-side scroll bar and not by touching the screen in the middle and dragging it down like you’d do on IOS or Android. In fact, when I dragged down the scroll-bar like that I found it far too easy to accidentally then press one of the buttons that are always present immediately to the right of the scrollbar. Of course, the Galaxy Tab is a smaller device and also much more expensive, so perhaps those factors will bring a few users to WeTab then still.

I don’t think I’ll get a tablet anytime soon though, I just don’t see when I would use it.

Summary

I didn’t do any particular talk this time, but I felt we had a lot of good content and I can always blurb another time anyway. I really really like that we so far have managed to get lots of different speakers and I hope that we can continue to get many new speakers before we have to recycle.

It was a great afternoon and evening. All the good people and encouraging words inspire me to keep up my work and efforts on this, and I’m now aiming towards another meeting in the early 2011.

I will do another post later on when the videos from these talks go online.

pNFS is my kind of toy

Ok, so NFS has never really been my cup of tea. Complicated and the problem with the root user and locking and what not have always made me get all itchy when thinking about or using NFS.

Enter pNFS, the NFS 4.1 invention that truly suddenly makes the NFS technology so much interesting for high performance solutions. I also think  it is a bit unknown so I thought I’d help to share the knowledge about this to you my dear readers. The p in pNFS stands for parallel. The whole idea is that the single NFS server just provides meta data back to the client, with enough information to allow the client to read the actual payload data directly from the storage server(s), that then supposedly are different ones than the main meta data server

img_pnfs_standard

(picture from www.nexenta.org)

As you can see on this fancy picture, it allows each client to speak directly to the storage device to get or send the data. This allows them to avoid using a single bottleneck NFS server.

NFS 4.1 and pNFS are IETF standards, RFC5661 to RFC5664. The first one being 616 pages long and one of the largest RFCs I’m aware of.

curl, open source and networking