Older blog entries for johnnyb (starting at number 41)

Creating a new section of my web site for a potential consulting business. I'm kind of wavering between staying where I am (EDS), going out on my own, and going with my friend Chris. There's a lot of potential I could do with Chris, but I know he has no clue about free software. Using free software wouldn't be a problem for certain projects, but writing free software I'm sure would be a problem. However, it might be doable over a period of time.

Doing my own consulting business might be good on the side of my EDS job, especially since I work 2nd shift. I'm pretty free until 3, unless you count my family :)

As of right now, I can't do consulting by itself simply because my son requires good insurance (lots of health problems).

Anyway, my site for the theoretical consulting biz is at

http://www.eskimo.com/~johnnyb/BartsonsConsulting/

The "solving problems" link has a semi-manifesto on which I plan on basing the business around.

Anyway, I have to wait until my wife pops out child #2 anyway (should be any day now), so I can kind of stick it in the back of my mind until life normalizes a little bit :)

Anyway, not sure what I want to do. In addition, I want to be spending more time in the church, but I don't see that happening to a great extent anytime soon.

This is my response to a post on NewsForge about whether or not programmers will get less money with the GPL:

Remember. Your can fulfill ALL of your obligations to the GPL by simply providing them with source on the CD that is covered by the GPL. What this means:

* for consulting work, you get paid the same.

* if an industry group wants you to write an industry-specific application, you get paid the same.

* if you are selling boxed software, you basically will still get paid the same. Why?

a) noone will be able to download it until after people start buying it in the stores, since that's where the source code is.

b) the value of the software in the store is greater than the value of it in cyberspace. Why? Because of the salesperson who can help the user find the software they need.

c) people respect brand names. It's human nature. Build a good brand and your brand will sell at higher prices than the same product from other brands.

d) only offer support on the purchased product.

Doing so will also reduce your R&D time because you will have users who will send you patches for things they want, if they are skilled an interested enough.

Now, if you are overcharging for your product anyway, sure, the market will correct you. However, I wouldn't be proud to say I made a living extorting customers because they didn't have any alternatives.

Users want freedom. They are even willing to pay for it. Remember, a lot of new computer sales were made to young people so they could get a piece of the "free" music. They paid thousands of dollars to get "free" music. Think about that. The money isn't the problem - the freedom is.

Add to this that very, very few people in the U.S. consider piracy to be unethical, and you remove any reason why the GPL would reduce sales on products offered at a reasonable price.

After much complaining about my outdated links, the GNU Compiler Writer's Jump Point has been updated. I haven't kept up with this information in years, so I thought the least I could do is update the links.

Also, I added a new essay on why Christian's shouldn't try to moralize non-believers at http://www.eskimo.com/~johnnyb/spiritual/MoralizingNonBelievers.xml and an essay on the ethical problems with Corporations at http://www.eskimo.com/~johnnyb/spiritual/EthicalProblemsOfCorporations.xml .

In addition, I added a sucky DocBook CSS stylesheet for my articles, and removed the non-DocBook editions. The only one left in that section is the LaTeX one.

Hopefully, I'll get a better CSS stylesheet soon, maybe from the web.

17 Jun 2002 (updated 17 Jun 2002 at 02:49 UTC) »

I know that others have pointed this out before, but it only hit me in a real way a few days ago.

The biggest enemy of Free Software is pirated software.

I have a friend from Church. Almost all of the software on his computer is pirated. He knows it's illegal, but doesn't think it's unethical. He would not pay the money for the software. I didn't ask him directly, but I'm sure if he had to pay for it all, he would be willing to look at Free Software.

In addition to his admitted guilt, he also did not know everything that he did which was illegal. For example, he thought that since he bought a copy of Quickbooks Pro, that he was free to install it on whomever's computer he wanted to. He thought that this activity was perfectly legal, and got very defensive when I informed him that it was not.

I did not have the chance to get around to telling him about the kind of software that allows this freedom, but I may in the future.

Anyway, the problem is how to solve this problem. On one hand, he is not even aware about all of his legal activities, and on the other hand, for those he knows its illegal, he doesn't care. He is a very moral person in general, but it seems that he puts the relative moral value on this subject about on par with the speed limit.

What to do about this? I'm not sure.

One possibility is to start an information campaign similar to the BSA's, but ending with Free Software information rather license compliance information. This would be most effective in Churches, where not breaking laws is one of the things that lends them credibility.

By the way, this conversation has lead me to believe that the actual numbers for piracy are much, much larger than reported, but the actual number would be too embarrassing, and basically prove that such restrictions were not in the public interest.

The following is a satire article I wrote for bowdownbefore.us.

The U.S. congress has decided to take a new tactic to fight global terrorism - Education. The upcoming anti-terror education bill will change the way schools in the U.S. are run, and lobby the rest of the world to do the same. "We're trying to make the world safe from terrorism. If the rest of the world adopts our public education system, then we can make the populace too stupid to do any real damage".

The new bill plans to make testing standards consistent with the wide range of students taking those test. "We want to give tests that don't discriminate based on race, socioeconomic status, or education level".

Will this have a real impact on global terrorism? Unfortunately, at the time of writing, no qualified expert was available to answer this question.

I just realized that I had failed to post this. The last two weeks have been very amazing. Basically, God has been busy at work healing my two-year-old.

First, he had cardiomyopathy that was caused by his mitochondrial condition. A year and a half ago, the doctors said that his heart would always be weak for as long as he lived - there was no possiblity of recovery. Of course, two weeks ago we had another echocardiogram for a checkup, which showed his heart having normal function!

Anyway, in addition, he is learning to walk quite well. Very good for a kid the neuromuscular specialist said would never have the strength even to sit up.

He's also two-and-a-half. That beats the first estimate of his life span (3 days). The second (9 months). And the third (2 years). They also thought that he would be constantly declining. Instead, he is constantly doing better!

Also, mitochondrial disease (Cytochrome-C oxidase deficiency, to be specific in his case) is a muscle disease. According to his doctors, he is showing none of the symptoms of muscle degeneration that are supposed to come with these types of muscle disease.

He is not fully healed. He still has a feeding tube (it used to be because he couldn't eat, now it's because he's stubborn). He still can't talk. However, God seems to be healing him a little at a time.

Anyway, just had to post! Praise God!

New baby coming soon! Andrew Micah has lowered himself, and will probably be out in the next two weeks!

After things get settled from that, I have to figure out what I want to do with myself. Of course, I need to finish my book. But that is an excellent spare-time activity. What I think I'd like to do is essentially what I did with Wolfram Research - help people take control of their software through free software. Of course, with Wolfram Research, I had a quite willing audience who was already doing so to a large extent.

Anyway, Tulsa is much more conservative, so it will definitely be a harder sell. However, I think I could probably make a pretty good case for K12LTSP for schools. Especially if I could get a good deal on licensing for CrossOver if the school had specialized applications.

Anyway, I'd be interested in comments from Linux consultants in other places and what kinds of work they managed to get, and what kind of issues they had to tackle.

Updated my book. Added some stuff to the Optimization chapter.

The best interview question I've ever come up with for a programmer is asking them about their favorite programming language. The following questions work very well: What is your favorite programming language and why? What is your favorite feature of that language? In what way could that language be improved? What is your least-favorite language you've had to work with? Why was it your least-favorite? The point is not to judge them on their language preferences, but instead to determine if they can think analytically about the tools they use. A programmer's main tool is his programming language, and if he is not exposed to a wide variety and does not understand them in-depth, then you shouldn't hire him. Hiring people who understand what they do and why they do it is essential. Too many projects have people who only know one way - the way they were originally tought. No matter what way this is, this is a bad situation. You need programmers who have a depth of knowledge, not people who can only copy things from books and hold on the line for support to answer questions.

I sent the following message to Nicholas Petreley on my thoughts on GNOME:

If you're interested, these are the things that attracted me to GNOME:

1 - Try to do it the right way first. KDE seems to try to get it done first, and then make it the right way later. This makes them polished earlier, but I imagine you will start to see GNOME expand in many ways that KDE can't when it gets to that point. It's kind of like Linux - start with a sound, if perhaps rough, base, and expand from there.

2 - Non-GUI cooperation. Many of the pieces of GNOME can be used in non-GUI applications. GLIB, ORBit2, even pieces of Bonobo are fundamentally separated from their GUI parts. This is characteristic of good library design, and also increases the utility of the platform to developers, since the skills are not bound to GUI-based applications.

3 - CORBA. This is an instance of #1. CORBA is an excellent, robust platform for distributed object communications. It is also not-hard. Those who claim so have probably not tried. It takes all of two hours to learn the basics, and everything comes easily after that.

4 - libglade. This is one kick-butt feature. It allows user-interfaces to be loaded from XML files. This allows nondevelopers to work on interface issues. GLADE has not matured to the point where this is really useful, but it has wonderful potential.

5 - Ultra-customizability - I haven't used KDE in a while, so it might have gained on GNOME in this, but the configurability is awesome. The ability to have multiple panes going every which way is great. The only thing that I miss is KDE's ability to do Mac-like menus :(

6 - Use of the actual language. QT depends on that horrid MOC to compile C++. If C++ wasn't a horrid enough language already, they had to go and put a preprocessor on it. Makes me want to run away screaming.

Of course, GNOME has a few things that drive me buggy -

1 - Bonobo. Many parts of Bonobo are well-written. However, there are many parts that are taken from Microsoft (like GUIDs) that are totally stupid. Interfaces should be identified with text strings that include vendor-strings. Also, it appears that they implemented argument marshalling on top of CORBA, which already does marshalling. They do this to avoid making the poor developer learn CORBA, which is a terrible goal. Keeping developers stupid is not a good goal. Also, they implemented a service for finding servers, when there is already a well defined CORBA trading service for this purpose. Ugh. They seem to re-implement the CORBA architecture in several places.

2 - GLADE. This could be an excellent tool. It only takes one more feature to make it great. That is to add a few hooks for minor source-code generation. Specifically, for the Python side, to allow it to auto-create Python classes that will create new widgets on instantiation, and also have skeleton methods for any signal handlers that are defined. This would make programming this environment stupidly easy.

3 - An immersive book on application development. Most current books ignore the issues that make GNOME programming more than just advanced GTK programming. Things like integrating Bonobo, Session management, Accessibility, Gnome-VFS integration, Nautilus integration, printing, configuration, sound, i18n, and scrollkeeper. Basically, taking an app and adding each piece. It doesn't need to go in-depth, but just show how each one works togehter. Unfortunately, the "mother tome" (GGAD) seems to want to delve into the murky depths of GDK - for which I don't have the faintest clue why an application developer would care. Anyway, this one item would help developers out immensely. It needs to immerse the developer in how development is done, not go in depth on any one subject. That's what API references are for.

Anyway, that's my 2c

32 older entries...

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!