Tuesday, November 13, 2007

The problem with hybrids...

Some are trying to revolutionize the trucking industry with hybrids. However, this Reuter's report talks about the problems from the trucking industry.

To quote:

Added weight from a second powertrain can limit a trucker's haul -- increasing per ton transport costs


That's exactly the problem with today's hybrids - from the Toyota Prius to the trucks mentioned in this article. Why? There is absolutely no reason for having TWO drive trains.

The solution? I theorized about this in 7th grade for a science fair project (and still pretty sure it could have been done even then), and have written about it recently on this blog too - a single electric drive power train that is driven entirely by battery power; the batteries can then be recharged either through plug-in, or through a small generator that kicks in only long enough to recharge the batteries while the vehicle is in full use.

In fact, that should be even more feasible now than it was in 1994 since we have all these technologies to reclaim energy from braking and other activities and divert that power into the batteries.

Sadly, it looks like the first such vehicle will be GM's Volt due to be released in 2010.

Unfortunately, for the trucking industry - you have a lot more rugged condition that the vehicles need to stand up to - mostly for construction site conditions and any other off-road condition. (They face the same basic problem that off-roaders face too.) This makes it harder for the electrical drive train, which has to be protected even more, especially against water. I personally think that at least the vehicles that need these kinds of ruggedness will be the last to go electric. Semis, and all other road vehicles that only need normal road conditions will be there pretty shortly, in my opinion. (That is only based on my limited knowledge of the mechanics behind it; not on any actual industry info. But it should be what happens.)

[Edit: In another story, Porsche had one of these "serial hybrids" in 1901. So it was definitely achievable in 1994.]

Friday, November 09, 2007

Home sales and the economy...

So apparently the builder's don't get it, or at least that is the report from an article in the NYTimes. They realize there some issues, but they're blaming the press on the duration of it. Well...they need to get a grip on reality because here are the reasons for it:

1) The builders built too many houses.
2) The builders built too many expensive houses.
3) Buyers (in certain regions - e.g. Northern Virginia, Atlanta, California, etc.) have pushed the housing prices up and up and up, and created a bubble that is now deflating.
4) Mortgage lenders offer bad loans and qualified buyers they shouldn't have.
5) Some cities (e.g. Columbus, OH) decided to clean-up downtown and move the poor folk out by helping them get qualified for those bad loans, thus making them someone else's problem.
6) Some areas(e.g. Loudoun County, VA) decided to set building codes that pushed property values up, primarily to preserve their way of life - spacious housing.
7) The average buyer can no longer afford to buy a house, condo, townhouse, or even an apartment. So young families are in trouble of finding places to live where the parent(s) have a decent commute (1/2 hour or less) to work with a job(s) that pays well enough to support the family.
8) Established households can't afford to buy a new house where they live. (Several years ago I had one high up general manager where I work say that he couldn't afford to buy his own house if he had to.)

And the list goes on. However, the Federal Reserve Chairman, Ben S. Bernanke, seems to get it:

Mr. Bernanke offered a rocky outlook for the months ahead. He said the battered housing market had yet to hit bottom, that delinquencies and foreclosures were likely to rise and that the depression in home-building was “likely to intensify.” He predicted that personal spending would advance more slowly, because consumers were less confident and because of tighter credit conditions.

- Quote from this NY Times article.

Yes, the depression on housing is going to intensify - prices have to come down to where normal people can afford to buy a house - and by normal I mean people with a $50k a year salary that have little to no debt, save may be college debt, with a good credit score. When that happens, then expect the housing market to turn around, no sooner.

So what can the builders do to help? Tear down the multi-hundred-thousand dollar homes they've been building, cut the lots to a quarter acre - even a half acre - and then put up a more reasonable homestead that most people can afford. Make $300k the top end, and $120k the bottom end. Then work with lenders to provide good, solid loans that are not going to destroy people's credit (e.g. variable rate interest loans, interest only loans, etc.). And inform buyers that lenders will work with them to keep them from foreclosure. People will buy - but you have to make it a safe market to do so.

Right now, the market is not safe. Answer the big question - if I sell in 5 years (a lot of people do), then could I get my money out of it at the very least? Right now, the answer is a very flat, absolute, and resounding NO. Turn it into a 'yes' and people will buy. (My wife and I did not recently buy for that very reason; we opted to continue renting - why? we didn't know where we'd be in 5 years and might need to move out of state, so it was too risky for us to buy at present.)

Wednesday, October 31, 2007

The World gets it, when will the US?

Heise On-line reports that the German Foreign Office hosted a conference for international users of the OpenDocument Format (ODF), to which they "invited about 150 users and political observers".

While one would expect a conference on ODF to be pro-ODF, which this conference certainly sounds to have been, it also showed that the international community, the world, gets what ODF has to offer that Microsoft - in both its Doc and its OOXML formats - cannot: standardization, compatibility, freedom to choose the software of their choice while having compatibility.

A few good quotes:
Mr. Yadava declared ODF to be a way out of the current file format chaos that went hand-in-hand with a high risk of data loss.


"We no longer accept Word documents," Yatindra Singh, a judge at the High Court in Allahabad, declared. These were not easy to convert into ODF-compatible files, he stated.


Office Open XML (OOXML), Microsoft's thwarted candidate for a second open ISO document standard would, in the opinion of Mr. Schie├čl, not be suitable for comparable tasks because of its complexity.


What was called for was competition between implementations of ODF, not competition between file formats, he stated. Everything else would only make future migrations more difficult.


Federal Foreign Minister Frank-Walter Steinmeier called ODF "a completely open and ISO-standardized format." It was thus an "excellent basis" for "a free exchange of knowledge and information in a time of globalization," he declared. This in turn was a necessary ingredient of the knowledge society, he averred.


So, when will the U.S. finally learn and get with it? From the sounds of it, the U.S. will isolate itself if it stays Microsoft's path. Certainly not the first time that has happened, but it would be a devastating blow to the U.S. economically if it does. The U.S. , economically, is largely dependent on the global markets, which are going in support of ODF and ISO standardization. Unless the U.S. follows suit, it will be in a difficult position to compete - or for that matter, to even play the game.

Monday, September 10, 2007

Economy, Economics, and Housing...

My original idea for the title of this piece was "Why my wife & I decided not to buy", which I would have made a sub-title if Blogger.com enabled me to do so. I also touch on a few other things in this post too. So enjoy.

The New York Times had an article recently about the declining job growth and that people are fearing there is a possible recession coming. The article states that the greatest number of jobs lost were in the house building sector of the economy, though it is likely that more job losses are on the way - or have already happened, as the report the article was talking about was for a short time period before some of the layoffs would have all been accrued. Any how...if you want to know more of what the article was about, then I would really highly recommend reading the article.

(Sadly, if you are reading this past 2 weeks from the publish date of the article, then you will either need to look it up in the library, or pay them a small fee. Otherwise, you might need a free account. Any ways...)

I really wanted to address what the problem is with the housing sector from the point of a customer. (Sorry, no consumer language here. I'm a customer!) And before I begin on that, just let me say that I am not an economist or anything of that nature - I have not studied the economy (just had the college and high school econ classes) nor studied the housing sector. This is just my own insight based on my own observations and ideas about financing. So please remember that, and take what I say with a grain of salt. And I recommend that you take this to a real economist, financial adviser, etc. before making any kind of decision on it.

That said...

My wife and I use to live in Fairfax County, VA - one of the most expensive places to live in the U.S. (Not as expensive as Manhattan, but on par with Northern New Jersey and Silicon Valley, L.A. area, etc.) Why did we move? Because we couldn't afford to live there - and it wasn't that I wasn't making good money - I was. However, it was impossible for us to be able to buy a house, or even a townhouse. (Houses were, at that time, starting at $500,000, and for a traditional mortgage that means a $25,000 to $50,000 dollar down payment. Townhouses were starting to get up to starting around $200,000 to $300,000.) So, when the company I am working for was looking to set up a facility in a cheaper area (Cambria County, PA), we opted to be moved there.

So we got there, and decided we would rent someplace for a while while we got use to the area, and found out where my wife (a CPA-in-the-making) would be working. Several months after she got her job, we decided we would start looking for a house to buy - yes buy - with a target of closing & moving in this fall. (We still needed to save some money for the down payment.) So we started looking and did find a couple places that interested us, but then we had to consider the economy...

We don't know how long we're going to be where we are now, and presently I have a 10 minute commute (20 minutes round trip), and she has a 2 hour commute (4 hours round trip) - both times are assuming good weather and traffic of course. So we were looking to even out our commutes...ok, but then there's the economy...

So...what were our considerations on the economy?

Well, first back in June and July there were the reports about the bad mortgage practices by a number of the mortgage companies. I was already a bit concerned by these practices as I knew we could get a loan with nothing down, and even be able to avoid closing costs through the various packages, but...I wasn't interested in that, and I think that those kinds of loans are rather foolish to start with. Also, one shouldn't forget that a lot of those loans also have conditions for the buyer (e.g. when you do sell, you can only have X% profit), so they weren't really attractive to start with.

We went and got pre-approval letters from some banks and did some research and stuff and got things in order before we went to a realtor, which we later learned was smart to do - but don't get too many pre-approvals - as realtors look for that before they will do serious business with you.

So we were protected from that somewhat to start with at least for the mortgage loans we would have gotten...BUT...

Even before this the area where we were looking was a slow moving market, and as I said earlier we did not know how long we would be in this area. What does that mean? Well, we're willing to commit to a 5 year time frame, but not much longer than that. (And you don't really want to buy a house and then within 3 years sell it and move on...that's not really good credit wise, etc.)

The problem then became that with the problems in the mortgage sector (e.g. foreclosures, etc.) and the need for the option to be able to resell in 5 years, the area just was not attractive for a home purchase would have a harder time selling in 5 years than it was before (which may have already been pushing it a little to start with).

Thus, we have decided to wait on a home purchase once again. And no, the Fed lowering the rates will not change that. We're young (in our mid-twenties), and we need flexibility. A market that is (a) over-priced, like it is down in Northern Virginia, or (b) to slow to resell, like it is in Pennsylvania, is just not attractive.

Yes, I do realize that we are adding to the problem some by not buying. But we also don't have the ability to take on the loss of flexibility within the time frame that we want.

And before I go - the issue in Northern Virginia is a key one, and one that is probably affecting a lot more places and Northern Virginia is just an extreme. But the basic problem is that the housing is way overpriced, and it getting to the point where people that have good jobs just cannot afford to even get into the market. If a good down payment (10%) is a year's salary, then it is just realistically unaffordable. This kind of thing will eventually lead to a crash of the market - whether localized to areas like Northern Virginia, or more expansively across the nation.

Northern Virginia got this way due to the boom of the 1990's, where housing prices in the late 1990's jumped highly and places would be on the market a matter of hours. (People would literally go and offer $10k, $20k, $50k more upon arriving just to get.) The result is an overpriced, unaffordable market. After graduating and getting work with a decent salary, I had to look at housing - renting something - and came across another problem with that market. In order to get something that was affordable ($700 to $1000 per month), I would have had to be in a government subsidized apartment complex and the most I could make was $42,000. (I made more.) So I didn't qualify; the only places I could get in were at least $1300 per month, and climbed quickly to $1700 per month. The problem? You should only be paying about 30% income for housing, not 50% or more. (And yes, before we moved we were paying about 60% of our monthly income for housing alone.)

Pennsylvania can be overpriced for other reasons, namely due to that the realtors are typically also the appraisers, so they jack up the price to where they want it to sell. (They've been doing this for years though.) So the 50 year old house sells for about the same as the just built house. And yes, we did see this in our house searching too - in some cases it was almost cheaper to buy land AND build a house than buy a 50 year old house; typically where it wasn't was either due to cost of land or because the house was majorly run down.

But the biggest problem of all is the builders. They want to make a certain amount of profit per house, and so they build houses that are a certain price level (e.g. putting a 3500 sq. ft mansion on a 1/4 acre lot - and yes, I've seen something like that in Northern Virginia, where the house barely fit on the 1/4 acre lot in pretty much every direction). So they build these big expensive homes that a lot of people cannot afford, and it becomes the same problem. So, not only are the existing houses overpriced due, but new homes are too expensive and out of reach of the majority of people.

Due to these reasons, I had told a number of friends, family, and colleagues that the market will crash at some point. Their argument in Northern Virginia was nearly always "well, the government is here, so it'll always go up" - except, post-9/11, the government is formulating plans to diversify where their facilities are located to minimize the impact such events could potentially have, and has a goal of somewhere between 2010 and 2020 of doing so (at least, the last I was aware).

The problem comes down to when the people that are the basis of the market (e.g. the people in their 20's and 30's) cannot afford to buy someplace, then the market is primed to crash. You can't just push it up to upper ages (e.g. 20's becomes 30's, and 30's becomes 40's) because life spans just won't support that.

Then of course, there is the world's concerns over U.S. consumer debt. Why is foreclosing becoming an issue? Because it is a result of bad debt, some of which comes from mortgages, but the vast majority of which exists (whether foreclosed yet or not) in credit debt - e.g. credit cards, pay day loans, etc. Eventually someone has to pay those, and if people die before paying them off, and the debt has to get covered - by the estate, or by the government if the estate won't cover it. If the person didn't own a house, then more likely than not, their assets will not cover their debt.

So, we have the following problems:
1) Housing is too expensive and pushing people out of the market due to affordability.
1a) Existing homes are overpriced.
1b) Builders aren't interested in building affordable homes.
2) Loans and debts are getting too large and is going to start becoming a major liability for the U.S. economy.
2a) Mortgage issues (e.g. foreclosures) are affecting the U.S. economy.
2b) Consumer debt is primed to make it worse as mortgage foreclosures also cause credit card and other debts to be foreclosed on.
3) Due to debt issues, financial institutions are tightening the reigns.
3a) More people will become unemployed as employers cannot get the extra money to create new jobs, or maintain existing jobs.
3b) As more people are out of work, more foreclosures will occur as they cannot pay their debt.

This becomes very circular very fast, and it only gets worse with each cycle. Now, don't get me wrong - I don't think it will lead to a depression, but it will certainly level the markets.

Part of this also goes back to the economy. One economist wrote a few weeks ago (also for the New York Times) that the long term P/E ratio should be around 16, and indeed looking at a really long term it is. But over the last 10 years, it has been hovering around 27, after being at its high of above 40 in the bubble of the 1990's, which is also where was in the 1920's. What does this mean? It means the economy is still overvalued. Unfortunately, most are looking at the 1 to 5 year range when looking at P/E ratios, and in that range it is still 16; the problem is they are not looking long term enough. So, the tech bubble of the 1990's has still to fully deflate.

Well...I better end it for now. Catch you around.

Wednesday, August 15, 2007

E-mail, Stress, & Filtering

ArsTechnica had an interesting article on 8/14/2007 about E-mail and Stress.

Honestly, it doesn't really surprise me that most people find e-mail stressful. Why? Because they don't use the potential of their e-mail interfaces (e.g. webmail interfaces such as Yahoo's, or even Thunderbird or Outlook) to manage their e-mail. What do they do? They let the e-mail accumulate in their Inbox, and then read it - one by one - and decide what to do with it.

That's probably fine if you only get about 20 e-mails a day. But, most managers and employees at most companies probably get a lot more than that when they're heavily involved in a project.

In the past, I've personally received over 700 e-mails on a daily basis from legitimate sources, and I still get over 100 e-mails a day from legitimate sources. However, I have never found e-mail to be stressful. Why? Because I use a feature of my e-mail tools to manage that e-mail, and organize it so that I can get to exactly what I want when I want it - and I don't have to read it all first to do so. What's this feature calls? Filters.

Filters operate basically the same regardless of the e-mail tool you use in that they allow you to look at various criteria such as message or subject content, who it from, or who it was sent to and perform different actions based on that criteria. Those actions, however, vary from e-mail tool to e-mail tool.

So why am I calling it an e-mail tool? So that I can refer to both web-based e-mail interface - such as Yahoo! Mail, Gmail, Hotmail, and others - as well as non-web programs, such as Outlook, Eudora, and Thunderbird.

Below I'll cover 3 of the e-mail tools I'm familiar with and how filters work in them.

Google's mail service - gmail - has filters that allow you to "star" and apply labels to e-mail. Their labels allow you to search your e-mail so that you can get exactly what you want.

Yahoo! Mail has more traditional filters. You have to go into your Mail Options page and then click on the Filters to add them. At least base paying subscribers get 50 filters that they can apply. For most, this should be enough. Filters with Yahoo allow you to direct e-mail to folders based on the criteria - to/cc, from, subject, message body.

Outlook and Thunderbird are very similar that I am familiar with how they do filters. In Outlook, it's called "Rules", while Thunderbird calls them "Message Filters", but they're essentially the same. Both let you do a lot more than simply apply a label or putting message into a folder - you can forward, reply, or do a number of other things.

Outlook has one advantage over most when couple with Exchange in that it can upload filters to be run on Exchange prior to your access via Outlook. Of course, that really only works when you keep all your e-mail on Exchange. But even when couple with Exchange, you can still do all the rules that you have when you're just using Outlook as it will run some on the server (Exchange) and others on the client (Outlook). However, Outlook also has a disadvantage - it can really only handle about 100 rules.

Any how...if you ever find yourself stressed by e-mail, take a few minutes and set up filters in your e-mail tool so that you can properly manage your e-mail. As you get more rules set up, you'll just feel the stress melt away, and you'll find it is a lot easier to notice and find e-mail from people as well.

Beauty of the ODF File Format

One of the real beauties of the ODF file format is that most anyone can talk to the people that created it and submit ideas to them for helping to improve it. I've submit a couple ideas - I don't know if they'll make it in or not, but because of how ODF is managed - which is done by OASIS, I am able to.

How does one submit? Well, this is by no means the official method - for that talk to OASIS - but from what I can tell, I'd suggest the following, which is what I'm doing (or trying at least):

1) E-mail the OASIS OpenDocument TC's Office-User lists your idea. This is a public, unmoderated list for ideas about ODF and implementing it. So it should be a good place to (a) see if your ideas is or is not already incorporated, and how feasible it is.

2) Once it has been vetted out a bit by #1, then submit a comment to the ODF TC. This should get you on the way to getting it into the standard.

This should hopefully put you on the right path to getting the format adjusted to meet some new feature.

So what did I submit?

Well, the first time I sent something in was to for an idea I had around enabling multiple people to work on the document. The Office-User's said that (a) it was already supported by DocBook (also supported by OASIS), and that it could be done using some of the features in ODF.

And then recently I sent another idea in - per document dictionary lists to augment the spell checker. If accepted, it would allow user's to be able to set word lists specific to a document so that they don't come up as mis-spelled regardless of whether you open your own document, or you pass it on to another user, who uses a different computer or even productivity suite.

Comparatively, Microsoft's OOXML format does not have this ability. In fact, the only people that would really be able to modify OOXML is, well...Microsoft. The ECMA organization pretty much guarantees that in their standard approval of it - it was designed to be compatible with Microsoft Office, not with meeting the needs of a Document Format. ISO approval would mean that an ISO committee would be able to modify it, but then it wouldn't be compatible with Microsoft Office any more. So, essentially Microsoft has locked up the OOXML format.

So, whether I am implementing a new office productivity suite (e.g. OpenOffice, KOffice, etc; or even just one of my own), or simply being a user of any supporting office productivity suite, ODF is the way to go - I can have a say in its features.

For more information, see the OASIS OpenDocument TC's website.

Friday, July 27, 2007

Jobs like that...

NYTimes is reporting on some of the interesting aspects of being a worker for NASA (article here). From the article:


In one instance documented by the accountability office, an unidentified worker explained the fate of a missing laptop, worth $4,265:

“This computer, although assigned to me, was being used on board the International Space Station. I was informed that it was tossed overboard to be burned up in the atmosphere when it failed.”

The employee was not disciplined.



What a job?! Take home a laptop, and blame on being burned up in the atmosphere. Wouldn't we all like jobs like that?

Tuesday, May 22, 2007

Suns word to Microsoft and others...

Sun's CEO, Jonathan Schwartz, wrote a great piece in his blog yesterday about patents, customers, and business entitled Censoring Free Media (Or...Fighting Letters to the Editor). To some degree, as Groklaw's PJ put it - it is an open lesson to Microsoft on how to reinvent themselves for the new age in the software industry, the age of free, open source software. And to that, perhaps the following is the one of the best quotes that can be taken from it, and one that all businesses in any industry should remember:

...the best way for us to do so is to embrace community content, not litigate against it. Those that resist the transition to free media are valuing their patent portfolios more highly than their customers. And that's not Sun's business model.


Oh, and thank you Sun for standing behind Red Hat and Ubuntu; I hope you will not limit yourselves to just those two (I hope they were just examples of whom you would stand up for), but regardless - thank you at the very least for standing up for them even if you do.

Tuesday, May 15, 2007

Microsoft...a threat? Not likely.

Recently Microsoft started talking up a storm about it patents and how F/OSS infringes them. But as many are noting, it's just a ploy. Well...

For starters, perhaps this is what Ballmer has been working on for the last few years since he took over the lead from Gates. If so (and I have not way to confirm that), then that is quite interesting as it would reveal the difference between Gates and Ballmer and how they have lead Microsoft over the years, and who is possibly to blame for some of the mis-steps at Microsoft. But that's only speculation. On for the real stuff...

First - let's assume that software patents in the U.S. are valid. In which case, it is likely as others have said that they don't likely have much to stand on as a lot of it is likely basic stuff that more likely than not has a lot of prior art to it. Of course, they do have patents on NTFS and FAT; but those are not likely very enforceable since they have let them go so long - non-licensed FAT implementations that would be infringers have been available for more than 5 years, so either (a) the implementations provide prior art that would invalidate the patents, or (b) they would not be able to enforce them due to patent laws. - if you don't enforce your patent within 5 years of knowledge of infringement, then you lose the rights to the patent and enforcement. At least for FAT, time should be up; and I would find it very hard to believe that Microsoft did not know about the FAT implementations in Linux before 2002. Other patents that Microsoft has likely have a similar problem.

Now, of course, for the above, we assumed that software patents are in fact valid in the U.S. While the Federal District courts have held them to be, the US Supreme Court (SCOTUS) has not upheld that yet, and in fact SCOTUS has been actively working as of late to correct the mistakes of the Federal District Court - and Microsoft knows this. There were two rulings by SCOTUS recently that overturned positions of the Federal District Court that have been on the books for nearly 20 years, and Microsoft was the defendant in one of those rulings - AT&T vs. Microsoft. In fact, if you read the footnotes in the ruling from AT&T vs. Microsoft, it seems that SCOTUS is looking for a case to rule on software patents, and likely rule them as invalid. Microsoft would not want to be that case, but if they push the F/OSS community they will likely be backed into that corner - and patent threats will do just that.

So what is likely to happen - well, either Microsoft will wisen up and forget about it (not likely given their history), or they will push companies and the F/OSS community until their patents are revoked or software patents themselves are completely invalidated by SCOTUS.

In the meantime, don't believe their statements, and don't fall prey to their FUD.

Note: Edit - Corrected title from 'thread' to 'threat'.

Friday, March 30, 2007

Linux, Windows, Mac, and Usability...

Today (2007-03-30), there was a post on OSNews.com concerning the difference between Linux, Mac, and Windows and what Apple and Microsoft got right, but the Linux community doesn't get...

While admittedly, I did not read the article it linked to, reading the summary and some of the comments on OSNews brings about a bit of a stench. Why? Because it is the same arguments over and over and over. Don't get me wrong, the Linux community has come along way on the Desktop, but at the same time they just don't get it. That is...

I've used Windows for years, and dabbled with a Mac from time to time. (I'm even thinking about getting a Mac for home use now.) And I use Linux full-time at home, and part time at work. I do have a Linux Desktop system at home, and I do love it. But at the same time there are numerous things that I hate about it. Any how...going back to using Windows...

Windows has had usability guidelines for a long, long time. It use to be part of the requirement for being able to become a certified Microsoft Developer (MCSD) - it might still, I don't know; the last I looked at that was 1999 and I haven't considered it since. Part of those usability guidelines ensure that users can use the system multiple ways - keyboard AND mouse by default - and define a very specific set of standards (ALT+F4, ALT+F1, ALT+F3, WinKey, ALT to get the menus, etc.) and they make Windows very easy to use. In fact, I can usually do a lot of things faster in Windows than I can in X under Linux because of the keyboard shortcuts - X is very dependent on a mouse being available for use - God help you if your mouse dies in the middle of an X session. Mac is pretty good too - they have standards behind how the Guis are designed and layed out, and standardize their keyboard/mouse intersction as well, though it does not work quite like Windows does (e.g. the menu is not so easy to get to [last I checked], so it can be harder to figureout what the keyboard shortcuts are to do stuff).

Linux, on the other hand, is this wonderful world of customization - which is fine for experienced users that have used the system for years. But what the community simply does not get is that you have to have some kind of standard. Customization is great, but you can't drive the system by default using both the mouse and the keyboard - one or the other. KDE and GNOME and the other Windows Managers and Desktop Environments simply do not do that by default. So unless you spend the time to get the entire system configured to do so (which will take a long time to do) you don't get it.

The Linux Desktop could be greatly advanced by the managers standardizing. Even Mac and Windows are quite similar is many respects; but Linux is way out there on its own. Of course, Linux probably inherited that from its Unix brethren, with whom it shares a lot of its idealogoy.

So please, for the sake of the Linux Desktop make the standard UI sane and usable. Make it work by default so that I can hit the Penguin Key (or Windows Key, for those of you with a Windows Keyboard instead of a Linux/Penguin Keyboard) and bring up the KDE or GNOME menus. Give some continuity to the interfaces by default and make it well known. It's great that you adopted ALT+ to get to menus, but now give us some standardization to other programs besides ALT+TAB. Give us access to the system, and make it easy to use.

Monday, March 12, 2007

Free the Arists from DRM and make the world a better place...

Help make the world a better place in every way you can.

This really should be what we all try to do - making the world a better place; and there are many, many ways to do so. First of all, start by treating those around you with respect and being nice. Secondly, uphold the laws the land so long as they are just and fair and God-honoring. Third, be a civil servant. It's great to have beliefs, but you also have to do something with them. In democratic and republic societies (e.g. the USA, Canada, and most (all?) of Europe, as well as a number of other countries) this means voting, petitioning, and joining together to make the laws and society better for all.

So, why am I writing about this now? Well, the Free Software Foundation though its Defective By Design "division" offers us all the chance to get on board and help put an end to DRM (e.g. digital rights management that has only ended up - and can only end up as - ditigal rights restrictions). DefectiveByDesign is putting together a petition for Apple's CEO, and Disney's board member Steve Jobs, calling his "bluff" concerning his open letter that was distributed a few weeks ago pertaining to the DRM in iTunes. Mr. Jobs basically said that the DRM is there because the labels (e.g. Warner, EMI, etc.) demand it and won't let music be distributed without it, so far as on-line goes, so Apple has to put it in there to make them happy, and, by the way, opening up FairPlay (Apple's DRM scheme) will not work, but will only make it harder to make FairPlay work - or something like that. DefectiveByDesign is calling for Mr. Jobs to (i) allow artists who are not bound by the labels to be able to distribute their music and movies on iTunes without DRM if they desire, to (ii) do what he can at Disney to get Disney content DRM free, and to (iii) work with the initiatives to repeal the USA's DMCA.

If you're interested any of this, then please go to www.defectivebydesign.org and look for the open letter to Steve Jobs; I've also tried to include a direct link here:



Sign an Open Letter To Steve Jobs


Be careful - you only have until March 31, 2007 to sign it. On April 1st, they are delivering it to Mr. Jobs - apparently including a jester's hat with it too. So please, if you want to make this world a better place, give artists their freedom, and help everyone to be able to get out of this DRM nightmare, then please join DefectiveByDesign and sign their petition. It'll do the world a favor.

Sunday, February 25, 2007

Microsoft's Real Plan?

Microsoft is in trouble. They've taken way to long to deliver the next generation their primary product (Windows), and the development cycle with it was horrendous - so bad they cannot do development that way again and survive. On top of that, they have placed the Computer Industry (and users) at a cross-roads - Office 2007 requires so much retraining that upgrading to OpenOffice 2.x is cheaper than upgrading to Office 2007 based on upgrade costs alone. (OpenOffice 2.x's user interface is familiar enough to most users that they will barely know they switched unless they are really big power users and use all the VBA functionality.) Moreover, the industry is moving towards standardized document formats, which Microsoft refuses to natively support. So, the Computer Industry is currently primed to chose a different OS and a different Office Productivity Suite.

So what is Microsoft's real plan? A few years back, after Microsoft was told they could not embrace and extend Java, they created .Net, and made it a central focus to move everything Microsoft related to be based on .Net. Today, they have achieved quite a lot in that arena. Add to it the recent Microsoft/Novell deal concerning Linux (which the Linux community generally does not like) and perhaps some of the pieces of where Microsoft is heading will start to fall together.

More than anything else, .Net is an enabling technology for Microsoft. Since they created it and wrote it, they could tie it to their current offerings (e.g. Windows on x86). But they also seem to have planned into it the ability to remove Windows from the stack. That is, like Java, .Net is a framework that allows programs to be written independently of the OS, theoretically, and hardware. .Net is tied to the way Microsoft does things, but as the dotGNU and Mono projects have shown the .Net framework simply needs to be ported to a different OS and architecture platform to move the applications (at the source level) to that new OS and architecture. So now Microsoft's own code is "highly portable" to something other than Windows (again, theoretically). True, Microsoft is not supporting .Net on other platforms than their own (Win32, Win64), but they could if they wanted to. (Frankly, it would be surprising if they did not already have a port of .Net to other platforms.)

Add to all of this the recent report of Microsoft selling Novell's SuSE Linux faster than expected.

So what is going on here?

It has been my speculation that .Net was the start of Microsoft's plan for how they will survive in a post Windows world. Yes, their Windows platform is currently the most widely distributed - but (a) people have a lot of issues with it, and (b) Microsoft can't continue to develop it any longer the way they have. Perhaps they will surprise us with a new development model for it, or perhaps the surprise is something even bigger...

Imagine (for a moment) Microsoft releasing a new version of Windows - Windows NG (for Next Generation) - that does not provide any backwards compatibility whatsoever. If Microsoft did this, they would need to be able to quickly push a lot of people to support their new system; or they could ride on the shoulders of giants - existing OS's that are already out there that have a lot of software and they would only need to push their major third party vendors over and the rest would be a piece of cake. Of course, to do this, they would only need to release .Net NG with support for both the latest version of Windows (e.g. Windows Vista) and Windows NG, release a new version of Visual Studio to support both but only allow it to compile to .Net's CLR, forcing the .Net framework to do it upon install or on first run. Most Windows developers use Visual Studio - and the majority of those being trained are only being trained on .Net - so this would quite easily move everyone to the new Windows NG platform.

So, then if it is so simple for Microsoft to move people to a new platform in a few short years (yes, it would take one to three years for this all to happen), then how could Microsoft use an existing OS? What would there be for them to use? Well, there is always the BSD's, but then Microsoft would have to fork and support their own - kind of like Apple did; which could be costly. Or, Microsoft could chose a Linux Distribution (Novell's SuSE?) and make it its primary back end; add on the extra tools to move their infrastructure over (Vista's User Mode Sound and Video drivers, and .Net) and a user interface to make it look like Windows (so user's can't tell), and Microsoft could quickly find themselves with (a) a very large set of applications that are already developed and running their system, (b) an easy way to support old applications (official Microsoft support of WINE?), (c) little trouble with moving their existing customer and developer base over (ala .Net), and (d) user's that are much happier. On top of it all, they could get out of the Monopoly they are currently in with Windows, as there would be a lot of vendors out there competing (Oracle, Red Hat, Novell, Slackware, Debian, etc.), and they can finally claim better security.

Now, if this actually happened, I would not expect Microsoft to open source .Net or any part of the infrastructure or interface support they would have to provide to the Linux distribution. (Shared Source? May be, but it wouldn't be very GPL friendly wherever they could get away with it.)


So, what is Microsoft's Real Plan?

Honestly, I am not an insider with Microsoft in any way, but looking at how they have set themselves up over the last few years, how they have separated out their Windows platform internally, and their deal with Novell and its sales results; it may very well be that their real plan is to make the next version of Windows have no backwards compatibility and be based on Linux or a BSD.

Here's hoping.

Tuesday, February 06, 2007

Consumers and Customers...

Perhaps one of the things that annoys me the most about businesses today is that they no longer have a concept (or at least most do not have a concept) any more of a customer. They view everyone as a consumer. It's bad enough that it is not just business any more, but culture itself. We've convinced ourselves that we are not anyone's customers, so much as we are consumers of goods. As a result we try to consume as much as we can, without giving thought to whether we really need to do so.

In truth, we are customers and we deserve to be treated as such. When customers are viewed simply as consumers, they are treated poorly. More importantly, they are made to believe the "more for less is better" - which is true for consumers, but not necessarily for customers.

For example, let's look at a restaurant. If a restaurant views their customers as consumers, then they will try to stuff as much into their meal as possible - regardless of its impact on the customer. This, in part, leads to customers overeating, gaining weight, and ultimately health problems. However, if a restaurant views their customers as customers, then they will serve a meal that is properly proportioned and ultimately healthy - it won't be too much, or too little.

Some simply argue that it is market forces at work. However, that is pure BS. Yes, if customers demanded to be customers instead of consumers some businesses will listen. However, customers are ingrained with this idea not entirely from the market - but also from education - specifically the economics classes and instruction.

Economists take the view of customers as consumers because it is easy for their subject to view it as such; just like they view businesses as producers. While this view has limited benefits in the subject, it has a lot more devestating impact on society at large, as society takes on the view and ultimately kills itself and everything around it trying to live up to it.

Please, treat us all - people and businesses alike - with the respect we deserve. We are customers. Yes, we do 'consume' a certain amount of goods, and we need to restrain ourselves as well, but we desire the respect of being a customer.

Sunday, February 04, 2007

Software Being Hard, and Engineering

A story ran today on Slashdot and also on OS News about why software is hard. It was interesting reading the responses - especially on OS News - as everyone seemed to offer their own opinion on what was hard about software. Both stories link back to a single article entitled Why Software Is Hard. However, the irony was primarily at OS News, where several discussions got off about how Software is NOT Engineering, and that is where I'd like to focus today...

Programmers are the hardest people to deal with when it comes to getting them to do actual work, and do it the right way; and then, when the product comes out and is handed over to the customer they will offer up hundreds of excuses as to why it wasn't what was promised - and there are a number of reasons that are truly valid. However, they seem to miss the entire point of how to solve the majority of those problems.

On the other hand, properly trained Software Engineers[1] seem to be able to do a lot better at delivering products on time and on budget - and yet they are also programmers. So what's the difference?

The difference is in how they both approach the problem of writing software. A programmer will look at the requests and say "yeah, I can do that"; and the software engineer will sit back and discuss requirements, architecture, concept of operations, design, time line, budget, and much more. So how does this really affect a project?

The Software Engineer's approach of discussion the requirements, architecture, concept of operations, design, time line and budget will reveal to them a lot more about the product - and they will (if the customer participated in the discussions all along) more likely than not provide exactly what the customer asked for and quite likely on time and within budget; but even when things are not on-time or outside of budget - the reasons for it are clearly documented and can be improved upon later on. I.e. the Software Engineer can learn from one project to improve the next project.

The programmer, however, will ask a few questions, get some basic requirements, take a wild guess at the budget and time line, and then get lost in the mess of work that ensues. They will also get lost in "requirement creep" and make a number of mistakes that require additional time to fix - and more money to do so - and more likely than not deliver a product that does not meet the customer's needs, expectations, and may get thrown out. The worse part is that the programmer has no way of gathering metrics to improve their work the next time around; so they make the same mistakes on the next project again and again - and they don't even know they are making the mistakes.

One of the arguments used by programmers is "writing software is an art, not engineering". This argument lies in the history of the field. First, a lot of early computer people started off in electrical engineering; they built the hardware, wrote the basic systems; and then moved on to build new hardware and became computer engineers. This part of the field still exists within the Electrical Engineering discipline. As those early computer people got more involved in hardware and improving computers, more computer people came out of the mathematical discipline (which was heavily used due to the Electrical Engineering involved) and took over more of the software that ran on the computer. And this is more or less since early computer usage was primarily for performing either very hard computations that took a long time, or quickly spitting out a lot of easy calculations. In either respect, these mathematicians did not like the engineering side, and saw their mathematics as more of an art, which they then pushed into the software.

However, since then software has grown quite a bit. Languages have formulized from assembly and a very chaotic method of programming to functional/structural and to more object oriented methodologies. Each time the field moved away from chaos it also gained a level of structure to how it was done, yet the mindset of the program writers - programmers - remained much the same. "It is an art."

In the last decade or so, however, business is realizing that there really is more to programming than "art" - specifically those businesses that are involved in a lot of engineering - mechanical, electrical, computer, etc. As a result, they are pushing back and saying "we can do this in our engineering houses, why don't we apply the general ideas behind it to our software programming houses?" This bore the software engineering field.

The key difference, however, is that the Software Engineer realizes that the "programming process" is just the implementation phase of creating software; and that there is a lot more to be done before the implementation phase can even begin. Comparitively, the programmer wants to just jump in and start writing code as soon as they have been handed a task, skipping the rest of the process, and possibly even ignoring any part of that process if anything from it was handed to him/her.

Thus, programmers can be seen as simple "grease monkeys" that are needed to put the bolts together; but will have a hard time rebuilding the entire system in a working order without much pain. Such jobs can easily be outsourced, and even sent overseas. However, software engineers hold a valuable value-add over programmers - they know the details of how the entire system works, and how it all fits together, and can repeatably build it to work; thus their jobs are not so easily outsourced or sent overseas.

To bring it back to the OS News and Slashdot articles, I noticed on the OS News responses that most all agreed upon the problems - bad management, too many unknowns, bad communication, etc. Yet the programmers could not offer any solution to the problems. It is exactly these kinds of problems that Software Engineernig aims to fix.

A few comments stuck out to me in reading over OS News.

Comment One:

I've always had a saying that goes something like this:

Writing software will be comparable to engineering when A) 10 different separate product management groups can come up with an identical spec for an application and B) can hand that spec to 10 different development groups and get an identical product back in terms of usability, bugs per LOC, performance, and price.

You do that today, and you'll get 100 different applications.

In other words, when results are predictable to within the 90th+ percentile in writing software, then it will be an engineering field. Until then, it's very much an art as Knuth outlines.
To this, I must say: Yes, you may get different specs, but each program - if engineered instead of merely programmed - will come back adhering to the spec, and likely with similar bugs per SLOC, with similar performance, price, and usability. They will differ some between them, but in the end - from a programmatic view point - they will be so similar it won't matter. Software Engineering applies itself not simply in the process of getting to the program, but also in the HMI (Human-Machine-Interface), MMI (Machine-Machine-Interface), Programming Structure, and Programming Logic. Programming is only a small part of Software Engineering.

Comment Two:

Whatever you want to call it, there is a process that should happen before the first lines of code get entered into your editor. It comprises some consideration of the problem, generation of requirements, specification of the interface, design of the data structures and algorithms, and representation of the control logic. These processes might not be so clearly identifiable in many cases, but they happen. Or at least they should.


I know exactly what you mean and we even studied these disciplines and let me tell you one thing.. in 99% of the time and situations, this is the biggest waste of time imaginable.

The reason?

Because you'll end up after hours of careful planning with an implementation block which will require utter redesign.

Been there, done that. I'm programming for 5 years actively now (I know it's not mastery) and honestly haven't been in big teams on big projects, but I did try to go this route and it usually backfires in a bad way.

You might say that the planning was poor etc. but especially if you are about to use new stuff (eg: new database, sure it's just another SQL but different from the one you used before) you WILL stumble on the way in a bad way.

My personal opinion is that a bit of good verbal (unless it's a huge planning) discussion about the internal logic BETWEEN PROGRAMMERS (no I don't want to talk about that with customer or marketing, it wouldn't make sense to them anyhow) is a good thing, but keep it realistic.

Also there should be "tries" of basic stuff before ventures take place. Eg: try out the new DB if it can do all the major stuff first exactly the way we think it can etc. Documentation is never good enough source of capabilities and pitfalls.

To this I must say: Yes, Engineering Software does add overhead. However, it will also drive down the cost. I've been programming for a decade now, and can see a true benefit to Software Engineering. It helps solve a lot of problems, and helps the implementators of the product do their job many times betters, on or under budget, and on time or even early. Also, Software Engineering is not so much about the technology you use, but the process you use to do to it. Moreover, the manager of the engineering team should ensure that they have the right people, with the right skill sets, to do the job. Per the quoter's DB scenerio - you bring in someone who knows the DB already instead of training the team on the DB, and so forth. (And you build that kind of stuff into your costs - cost for the project, and the cost of doing business.) Finally, with Software Engineering (as I said above) you learn from your mistakes; sure this time around you may have had to redesign it for some reason (likely because the process was not held to strictly enough, or communications were not held up well enough); but you learn the next time and you can fix the problem - ensure you have better communications, say no more to feature creep, etc. Unlike programming, Software Engineering has a feedback loop that helps it improve itself over time.

Now there is another, newer field that is starting to crop up - Systems Engineering. Simply put, Software Engineers simply deal with the software parts of the system, where as Systems Engineers extrapolate a level higher to get a full view of the entire system (e.g. hardware, software, server components, etc.). Many Software Engineers probably do a good bit of Systems Engineering along their way too.

[1] I say properly trained since unlike any other Engineering Discipline, there is no barrier to someone calling themselves a Software Engineer - unless they are from the State of Texas, which requires Software Engineers to pass tests just like any other Engineering discipline in order to call themselves a Software Engineer. Honestly, this is probably a good thing; even though it would also be a pain in the butt to do, and expensive too.

Monday, January 29, 2007

Response to Cringley...

I often find Robert Cringley to have a lot of good ideas and such. He has, as of late, been getting into a few rants on Google. While I posted the below to the comments section of one of his articles (see here), I would also like to post it here. I think this is really likely. Enjoy...

A couple things....


1) Between AOL, Yahoo, and MSN - well, AOL needs to die. It's old, and decaying, and built on AOL-based (non-standard) protocols that AOL controls. I love AIM (which needs to somehow survive AOL dieing), but AOL needs to go. Also, MSN needs to die too. Sure, Microsoft will fight tooth and nail to keep it from it, but let's face it - it (like AOL) does not really offer anything but a lock in to a certain vender (Microsoft, as opposed to AOL), and we all know how evil Microsoft is. A nail in MSN's coffin is what is needed - well, not just one nail, but enough to seal the lid shut sow we can put it six feet under. Which leaves Yahoo - Yahoo actually offers something useful, though they may not offer it well enough to survive. Yahoo does not lock in users to any one vendor (Windows/Linux/Mac, AOL/MSN/home-town-ISP), but does provide a number of services (small business hosting, good e-mail, etc.) that do well. So, Yahoo needs to survive; but AOL and MSN need to see the mortician.



2. There are two problems with the rest of the article. (a) Interconnecting the ISPs as you suggest really only puts more Internet connections together - that is, after all, how the Internet is actually formed. ISP A agrees to allow traffic from ISP B to ISP C; ISP D - peered with ISP C - has someone trying to access ISP B, so ISP C lets it through to A which lets it through to B. It's really a simple formula. Putting more ISP-to-ISP lines in, while not riding on the central backbone providers (the really BIG ISP - L3, etc.) simply extends the Internet traffic that much more. It would primarily create a second Backbone network; sure it may not go directly to the primary backbone but it would still do the same thing with a slighly higher latency. It'll be quite hard to do otherwise.



(b) It is also just as likely that Google is looking to sell those datacenters as really big versions of their already selling search appliances for companies; thus competing more with main-frame systems than with ISPs or video, etc. Given Google (i) already has such appliances on a smaller scale, and (ii) focuses their primary business in search, I think this is a more likely scenerio.



Remember - Google is not really trying to compete with Microsoft; but if they happen to, so be it. In this case, Google would be leveraging Open Source technologies that they are already using in their own datacenters to sell a really large appliance to businesses to supplant main-frames that do heavy data crunching (analysis and searches). Think searching the FBI fingerprint databse, or facial recognition search type facilities.



They would be competing with Microsoft in terms of supplanting Microsoft Windows in the main-frame market. They would also be competing with Sun Microsystems (oh wait - isn't Eric Schmidt on their board?), IBM, SGI, HP/Compaq - and their AIX, Irix, Dynix, HP-UX, etc. products; which are already being eaten alive by Linux, which also happens to be Google's OS of choice. Ironic, isn't it? And doesn't this sound so much more like Google to start with?

Wednesday, January 24, 2007

Iraq...

I have been planning to primarily stay away from political stuff, trying to stick more to technology and related things; but I was thinking (as I was waiting on Slackware 11 to install) about the State of the Union Speech last night by President Bush and some of the reactions I had heard thereafter, such as the Democratic response.

The part of the speech I would really like to focus on is Iraq. Many - the media and the Democrats - are flailing about trying to get the US out of Iraq. However, pulling out of Iraq is just going to be a mistake - and (like it or not) the President was very, very right about how we need to deal with Iraq.

Iraq is a long term project - it was always a long term project. Back after WWII, the US spent a decade or so rebuilding Japan - and it took more than a decade to do so for a compliant nation without additional outside interferences. Comparatively, Iraq - with a majority of its citizens being compliant - differs in that it does have some non-compliant citizens and it has a lot (and I mean a lot) of outside interference. To really be successful in Iraq we need to have a 20, 30, 40, or even 50 year strategy, stick to it, and follow through.

The problem, however, is that since the WWII the media has learned just how much they can sway the public, and they are doing so against the better will of the nation, and against the better interests of the nation. That is not to say that mistakes have not been made, but to face the reality of the commitments we have made and to stick to them.

But then, perhaps that is the problem. As of late, people do not want to have commitments. They leave marriages after years, abort children in the womb, jump around from job to job, and the list goes on and on. May be that is the lesson that US really needs to learn - to start keeping commitments again.

Perhaps, if the Democrats and the Media have their way and the US exits Iraq, the fall out and the impact that it will have on the US (and there will be one) will teach our leaders that they must start keeping the commitments the country enters into, whether or not the citizenry always cares for them doing so.

And no - the Democrats do not have an edict from the people of the United States to pull out of Iraq. And they are just as guilty as the Republicans. But then, it does not really matter who is in power in Washington D.C - it will always run as it always has, and neither party can control that.

Monday, January 22, 2007

The New Tax to Support Corn Farmers: Ethanol

Ok, so I know a lot of me may flame me for not having some hard evidence in this, but I am sure there is a lot out there if you do the research. This just one issue that really, really, really bugs me...

Ethanol has been all the rage for quite a while now. In fact, some states are now requiring gasoline to have a minimum ethanol content. For example, a few months ago Virginia started requiring something like 10% ethanol in the gasoline mixtures. Unfortunately, this really ends up being more of a tax than anything else. Why?

Most ethanol in the US is made from corn, which is (to start with) highly government subsidized - it keeps the cost of corn low; but the problem is we make so much corn we don't know what to do with it. So, instead of bringing down the price (as that would hurt the farmers further), they decided to make it into fuel - ethanol - and there are a number of factories starting up to convert corn into fuel. This sounds good and all, until you consider how efficient corn-based ethanol is, at least when mixed with regular gasoline.

From my own, personal experience - ethanol is the worst thing I can put into my car. While adding it does bring the price of a gallon of gas down, say from $2.50 to $2.00 (or really liberally $1.50), it increases the consumption of gas by my car by nearly 2 - so for every gallong of gas that I was using, I am now using nearly two gallons. Thus, that gallon now costs me $4.00 (or $3.00 on the liberal), an increase of $1.50 (or $0.50 on the liberal). Not only that, but in increase the emissions of the vehicle similarly.

Now, figure this - the state is taking a cut on every gallon for (i) sales tax, (ii) taxes for use on the roads, and many other taxes for other things therein related. And then big oil takes it cut per gallon, as well as all the costs for production and distribution, and finally the station gets its miniscule $0.02 cents per gallon. So, all those cuts now get doubled by simply adding in a little ethanol. Everyone is richer except the consumer...*cough* customer *cough*. And they wonder why the American public is so concerned about the cost of a gallon.

Me - I want my hybrid that I can plug into an outlet and perhaps never use a gallon of gas with unless I chose to. But that's another time.