Philip my goal is not to discourage experimentation and wild ideas. My goal is to make sure people are focused and understand when it starts to become noise that they need to have strong leaders to reign it in or the project will ultimately fail and in the process end up wasting other people bandwidths. The worst part is a lot of these ideas are springing up and devolving into noise on XDG. Hell I ignore most of XDG these days unless someone points out something I should be looking at. Really these things need to be started on XDG and then moved somewhere else and finally proposed when there is working code and/or a sane spec.
The things that have worked out so far on Freedesktop have all had a couple of things in common – a strong leader or two, being applied to actual problem domains without care of who would adopt it, working code, and relative simplicity. None of them set out to be perfect out of the gate either. Cairo, HAL and D-Bus have all seen major API changes along the way. In other words they have all been iterative processes without falling into the trap of having too many cooks in the kitchen.
I pointed out HAL before because it really is an example of how a standards project off fd.o can become successful. I think these dynamics need to be understood so the community doesn’t waste its effort and then wonder why no one is adopting their work. So if I am harsh it is because I want to make sure people don’t dance around the issues. I am also harsh at points because if the community makes a big push to a broken standard then we end up having to live with it for a long time. I am also quick to sing the praises of projects that solve real world problems in creative ways. Prove me wrong about D-Conf and I will sing its praises.
This brings me to another point. Developers need to have the confidence in their skills that regardless of what I say or what opinion I have, they need to be able to continue with what they believe in. Of course there is a a fine line between confidence and self delusion. A confident person can take criticism in hand and use it to work harder at making their ideas a reality. They also have the wherewithal to reassess where they are at, admit to things that are lacking and be strong enough to stick to their guns on other things. I think your post showed some of that and perhaps D-Conf is in good hands after all. Only time will tell.
[read this post in:
ar de es fr it ja ko pt ru zh-CN ]
Comments Off
Ross, wow that noise is quite crackful. I’ll come out and say it D-Conf itself is quite crackful and I really hope there are leaders in that community who understand the difference and can steer D-Conf somewhere where it would actually be useful. Whenever there is a grand scheme to save the world nothing ever happens. One needs to tackle the details in small manageable bitesized pieces.
Now D-Conf could become something that does something useful if people stop talking about things like storing configuration in a CVS server – crackful implementation detail – and start talking about the real problems that need to be solved.
HAL is a perfect example of how a spec should evolve. It specifies a simple architecture, a couple of concepts, a list of common keys, and a D-Bus API for accessing these keys. It hardly goes into implementation details. That is left for the reference implementation which is this concept – you might want to sit down for this one – called code. Because of its relative simplicity there has been many other technologies that were built up around it in small chunks. When you look at the state of HAL theses day you see a diverse and complicated ecosystem that has sprung up around it. This complication however is manageable because the different parts sprung up when people with needs started writing projects around HAL.
HAL did have its crackfilled days at one point. In the beginning before any of us knew how HAL would fit in there was this idea that it would be the canonical way of configuring all the hardware on ones system. While this sounds cool and useful it really was a distraction and HAL became less the hardware abstraction layer and more the hardware enumeration layer (all jokes of HEL[L] aside). Going this way allowed us to not waste our time on a problem that were already solved by individual libraries. Would it have been nice to have one way to do configuration? Yes. Would we be as far along with HAL had we decided to go in that direction? Most likely no. Will we ever get such functionality? Maybe. It depends if it is useful. But, you see, HAL is an iterative process. It didn’t set out to solve every problem related to hardware in one fell swoop. It set out to solve discreet problems that we knew it could solve. In the end it may end up solving more problems than we could have imagined.
[read this post in:
ar de es fr it ja ko pt ru zh-CN ]
I’m not getting a call back. Seems weird from someone who gave me two of her numbers and asked me to call her at least five times during that evening more than a month ago. I thought I had at least met a friend who could show me some of the places to climb around here. But then again it has been over a month since I met her in Germany and a lot could have happened in that time. It is not my right to know though I have to admit I wish I did know what went wrong. It is not every day that you travel half way across the world and meet someone who happens to be into the same things you are and also happens to live a couple of towns over from you.
I have to admit I have run it around in my head a hundred times and the only thing I can come up with is perhaps some kind of misunderstanding after I left the bar because I know she was still smiling and still asking me to call when I walked out that door. The thought of someone running around hating me for something I didn’t even know I did is most likely the biggest annoyance nipping at my heals. But then again that is very self centered of me to think. In the end the reasons most likely have nothing to do with me.
I refuse to think of her in a bad light and prefer to think about how meeting her that night made me enjoy my time more in Germany. The fact that those feelings will never be recreated or I will never find out what might have been is inconsequential. I met a cool person that night and that is better than never having met her at all. No regrets here.
Update: In answer to a comment – no I did not wait a month to call her
I called her when she said she was getting home from Germany which was two weeks ago and called her second number last week.
[read this post in:
ar de es fr it ja ko pt ru zh-CN ]
I just got finished reading this article entitled Linux and Audio Production: Simplicity Required. A couple of things caught my attention – it was about audio recording, a topic near and dear to my heart, and it stated “simplicity required”.
Now to all the tech heads who can’t see past their own wants and needs, to those who state we are targeting brain dead users by dumbing down the interface, I give you the typical user I personally try to target. Read the article.
Jono Bacon is a smart guy. He states:
The solution to the problem is integrating key, predictable components and making them work flawlessly. In all honestly, if I cannot download the software and make it work straight away without tinkering around with sound servers and such, it will not get a look in. Period. When you download and use Firefox it just works, when you use OpenOffice.org it just works, when you use The GIMP it just works – when you use Cubase it just works.
He just isn’t a guy who wants to tinker around with his computer. As a user he wants the computer to be a tool for recording and mixing music. This is important distinction as people who work on bringing these tools to the user often get lost in the fun of tinkering. It is one of the reason programmers shouldn’t be designers because they often get tied up in designing for the programmers needs or mindset and not the users.
Programmers should also give more respect to designers, usability experts and all around sensible thinkers who are for the most part one step removed from the down and dirty bits and bytes that programmers love to wallow in. This gives them a clearer view of the computing landscape to those who use computer for more than just a playground (believe me these users more than outnumber us).
Often designers feel they are being ignored simply because they are not on the front lines writing the code and in our community it is those who write the code who have the most say. When thinking about this it is good to remember that while the designers may be one step away from the code we as programmers are most likely miles away from the typical user.
“With great power comes great responsibility” (ok I know the quote is cheesy but it holds a kernel of truth). We as programmers must be willing to use our power to create not just for ourselves but for the wider audience. If Linux is to succeed on the desktop and grow in mindshare it is people like Jono who we need to be listening to. “Simplicity Required” states it all quite simply.
[read this post in:
ar de es fr it ja ko pt ru zh-CN ]
A couple of cool things happened today. On whim I tried to plug in and turn on my dead laptop. I figured something was wrong with the powercord when it stopped charging a couple of moths ago. It was about time to decide whether or not to spend the $40 on a new cord in the event that was not the problem. Turns out I won’t have to because the battery started charging again and I could turn on the machine. It does sound like something is loose inside but I am weary to open it up. I have lost two laptops because I went looking inside.
The second thing that happened was I found real apple soda at Trader Joes. This stuff is imported from Spain but it was German Aphelshorle that first got me hooked. The cool thing about this stuff is that there are no added sugars besides what is naturally in the apple juice. This means it is not overly and artificially sweet like the soda’s we Americans mostly drink.
P.S. And my day just gets luckier. The gedit spell checker suggestion for the word “aphelshorle” was “asshole”. I needed a laugh like that.
UPDATE: As Thomas points out to me in the comments the correct spelling is Apfelschorle but that doesn’t produce nearly as hilarious a suggestion from the spell checker.
[read this post in:
ar de es fr it ja ko pt ru zh-CN ]
After this week I’m going to need to unwind. It has been decided what is going on and I will hammer out the details in an e-mail to people later this evening. We are kicking it off at the 2:00pm tour of the Samuel Adam’s brewery in Jamaica Plains, and then heading to Revere Beach for some sun worshiping. At some point in the evening we will head to a couple of bars and restaurants in the area to get some food and drink and then slowly make our way back to Cambridge stopping at a few bars in between. Should be fun and the weather looks like it is going to be great.
[read this post in:
ar de es fr it ja ko pt ru zh-CN ]
I decided to have some sort of gathering using my birthday as an excuse. I however don’t want it to be the usual go to a restaurant and head out to a bar afterwards. I have some ideas but don’t know how to execute them in the Boston area. Perhaps others who have lived here longer can give me advice on throwing a fun but out of the ordinary party this weekend. Some criteria – if it is a place it needs to me a place where people can get up and move around without bothering others. I want people to be social and not devolve into talking about work. It must have some sort of entertainment – either by others or allow for the group to entertain themselves (i.e. get a pickup game of drunken Frisbee). I must be able to organize it for Saturday. An outdoors thing would be great assuming the weather holds up.
I suggested Dick’s Last Resort as I thought people would get a kick out of me being lampooned since a birthday boy is sure to be a target but that got mediocre responses. Some things I am looking at but have no idea where to do this in:
* BBQ in a park that preferably allows alcohol
* BBQ on the beach
* Late night bonfire somewhere
* Bar crawl
I’m sure others can come up with better ideas.
[read this post in:
ar de es fr it ja ko pt ru zh-CN ]
Yesterday my 28th birthday passed without much fanfare. I was planning on staying at work to finish up some errata but the power went out so I went with a bunch of guys to try out some candle pin bowling. I never did it before though I have duck bowled which is similar. Basically it is like a mixture of modern bowling and skeet ball. You get three tries to knock down ten pins. The big differences are that you use small wooden balls weighing between 2 and 2.7 pounds, the lanes aren’t cleaned during your round so you can use knocked down pins to get the other pins, the pins are skinny and symmetrical and like I said before you get three tries to knock all 10 down. It is a lot of fun and a lot harder than regular bowling to get a high score.
This has been a mellow birthday compared to those in the past. Mostly because I am not in the same area as my twin sister, it fell on a Tuesday this year, I have a lot of work to get done and well there is always this weekend. Actually, ever since I got back from Germany I have been in a sort of holding pattern when it comes to letting loose. Too much partying out there and perhaps a bit overoptimistic about some things coming home. The jury is still out on that one though.
[read this post in:
ar de es fr it ja ko pt ru zh-CN ]
To Fedora Developers,
This is a letter I wrote to fedora-devel-list and fedora-test-list for those who don’t read them but are still interested in weighing in on the subject:
In the intrest of getting API’s out that more reflect what we will see in D-Bus 1.0 I am toying with the idea of upgrading FC4 to the same version in Rawhide. This does not effect the lowlevel D-Bus libraries except for fixing a couple of bugs. What this does is give a more usable GLib and Python bindings.
What this also does is break apps using those bindings. GLib is a pretty big change but then again this is the first release we thought was good enough for mass consumption.
Python itself is changed in a number of ways but mostly when creating a service. Clients on the bus who just fire off blocking messages should have no changes needed. Clients who still need a mainloop will simply have to import dbus.glib.
With FC5 a ways off I think it is more important to get wide use of these API’s as they will most likely be than to keep compatability with the 0.33 bindings. I’m not promising API’s won’t change but we are now in the mode where we are trying to keep them relitivly the same.
The purpose of this mail is to find out if there are any third party apps that use the GLib or Python bindings that are packaged for or with FC4 and if those developers would object to this upgrade. The real question is would you like the pain now or later?
I’ll put a tarball in testing sometime this week.
I say rip the bandade, but that is just me. The GLib bindings shouldn’t have seen much use as of yet and the Python bindings are mostly used for clients of which requires a one or twoline change. I’m not aware of any production code that uses the Python bindings as a server. Plus with the new bindings the tutorials of fd.o (http://dbus.freedesktop.org/doc/dbus-tutorial.html) will actually match what is in FC-4.
[read this post in:
ar de es fr it ja ko pt ru zh-CN ]
Comments Off
0.35.2 is now on the servers. I’m not sure why distcheck wasn’t catching the build errors which were basicly missing files in the tarball due to them not being in EXTRA_DIST but it needs to be looked at. It most likely is just a bug in the autotools. Now on to the fun of merging the 0.35.2 branch into head.
As usual:
dbus-0.35.2.tar.gz
[read this post in:
ar de es fr it ja ko pt ru zh-CN ]