You are currently browsing the category archive for the 'General' category.

Have just read another definition of what is software quality on Jeremy D. Miller’s blog:

defining software quality as the structural qualities of code structure that enable a team to be productive within that codebase for an extended amount of time

Jeremy is writing on how to achieve the quality in: Patterns in Practice: A Retrospective. For those who cares about the quality of the software you’re building you have to go over the series of the articles that Jeremy has written for MSDN Magazine.

If you want to be a better developer you may not have enough time to read ~10 books, watch screen casts, attend presentations or conferences, buy costly tools and courses. The cheapest was is just take a half an hour each day over a week and go read those publications. And think about it…

I just finished watching a video about basics of Usability. Before, I’ve read few articles and blog posts on the topic , but this video gives a nice introduction in Usability basics and Usability Testing so that I’ll save it in the blog. The speaker is Steve Krug, author of “Don’t make me think”, book sitting in my “to be read” list and just moved higher in the queue.

The thing I liked the most is how “cheap” are usability improvements. Change the caption of the button, remove that cryptic description, move important things higher and hide functions being rarely used.

And test it. Iteratively. It’s agile on it’s better form – pick a user or two and just let them do something useful in your app. Notice errors, fix it.

And test it, again…

… was to choose Microsoft’s implementation if Ribbon to use in our current development. Yes, I knew it was released as beta. But I hoped to have frequent enough releases from MS to keep up with user’s feedback & fixing bugs. It was my error.

The usual feedback from MS on questions and bug reports is:

Thanks for reporting this issue.  This is a known issue and will be addressed in our V1 release.  In the meantime, unfortunately, you’ll only be able to … until we release a fix.

The problem is that the Ribbon was released in October 2008. Since then, nothing like a bug fix release was provided. No known date of the next version to be released. No intermediary releases with bug fixes. Nothing.

We lost significant time working around bugs & bad implementation. It’s completely my fault. I should choose a commercial component to achieve our goals.

Do you want to know my second biggest failure?

Choosing for our project WPF Themes also provided by Microsoft. Why it failed? See above. Bugs that make you spend time fixing weird behaviors instead of providing value for the client.

What I’ll do now with all this crap in our projects? I don’t know yet. But I know for sure, that I’ll never ever use any betas (of developer products) provided by Microsoft in a real development. At the end it costs you too much…

Heard today, from devs working on an old & big project:

Hey, please open that file at line 11108 and try…

That’s… breathtaking…

To be clear, they are talking about source code file from a project that is in continuous maintenance mode, with new functionality and bug fixes added with regularity.

 

Definition

Technical debit – obligation that a software organization incurs when it chooses a design or construction approach that’s expedient in the short term but that increases complexity and is more costly in the long term.

Technical debit by Steve McConnell:

If the debt grows large enough, eventually the company will spend more on servicing its debt than it invests in increasing the value of its other assets. A common example is a legacy code base in which so much work goes into keeping a production system running (i.e., “servicing the debt”) that there is little time left over to add new capabilities to the system.

From 37signals’s blog, There’s always time to launch your dream:

“I’d love to start a company / become a great programmer / write an awesome blog, but there’s just not enough time in the day!” Bullshit. There’s always enough time, you’re just not spending it right.

Now that’s some tough love, but I’m sick and tired of hearing “no time” as an excuse for why you can’t be great. It really doesn’t take that much time to get started, but it does take wanting it really bad. Most people just doesn’t want it bad enough and protect their ego with the excuse of time.

If you want it bad enough, you’ll make the time, regardless of your other obligations. Don’t let yourself off the hook with excuses. It’s too easy and, to be honest, nobody cares on the other side.

It’s entirely your responsibility to make your dreams come through.

Q: Are you glad like I am when things flying in your head are written down nicely by someone else?

The 37signals quoted:

A complex system that works is invariably found to have evolved from a simple system that worked. A complex system designed from scratch never works and cannot be patched up to make it work. You have to start over, beginning with a working simple system.

— John Gall

Reading this remind me principles of agile software development, “release early, release often” way of Open Source Software world and my own indestructible certainty in the fact that a simple working software released today is much better than a complex and over-engineered beast to-be-released-when-it-is-done.

A software is always a solution. Let’s build first a solution of client’s problem, thereafter we’ll add to application all that crap backed in typical business application, like report designers, integration points with 10 external systems and data export in 100 formats. Do the core. Release it. Then go back and do the rest 80% of application that will be used by less than 20% of customers.

…say that something of these are not true?

  • Business software should be boring.
  • Users of the business software can work only with grids and input forms.
  • Business software are operated by mechanisms, not by humans.
  • Ctrl+N, “319.11″, TAB, “160GB IPod classic”, Enter.
  • Trying improve user’s experience with business application is a no way.
  • “Hi! Our software doesn’t work for you? Our support service will be very happy to help you with your problems”.

Or may be I’m too new here… It’s like Zen?

I think you know already that Google Reader has left the labs. Great news, but for a week or so I cannot “read the Reader” with my browser of choice – Opera. But seems to be that Google doesn’t like it as I do.

So, the story is that now, after putting Reader out of beta stage, Google teach it speak few new languages  And shows it in browser with a language that match user’s regional settings. Cool? No. For me, since my regional settings are set to country where I’m living now, this means that Google Reader speaks to me in German. But I don’t know German language! Weird… I was so sad…

And is was more sadly that Google don’t provide at least a hint for users on how to change this preference. After googling around, I’ve seen that this is not only my problem, but also many other users have the same problem.

And just in the evening I remembered about similar weird problem experienced with Google’s blogging platform – BlogSpot. When I’ve decided to open a blog, BlogSpot showed to me it’s German face. Yes, it was smart enough to see that I’m coming from German speaking country and polite enough to show his face in German. Did I mention that I don’t know German?

Yes, there is a solution to make it speak English. But it requires googling, reading few blog posts and trying. For me, and I think not only for me, it was simpler to create a blog in other place, that by default speaks the language most widely used in Internet.

Well. Sorry for ranting so long about it.

Go for it: http://www.google.com/reader/view/?hl=en. Google Reader in English. Still good. Still best RSS reader. And well shown in Opera.

 Update: after writing this post, found this on Google Reader discussion group: Changing the language settings. This is the case when I’m glad that posted information became obsolete so fast.

I think yes. So, “Hello world!” and “welcome” on my blog.

Few words about me: I’m a software developer that wants to be a better one. I like agile approach on building software and prefer simple things that just works.

Why I’m starting my own blog? Blogging hype starts few years ago, so I’m not “trendy”. Then? Sometimes i want to say something but i don’t have audience. Sometimes i want to leave a comment in one of blogs that I’m reading, but not always comments are the best place to leave an opinion about something. Idea to start a blog flies over my head for a long time, but only when I read during short time in few places idea to “stop thinking and start doing” I decide to “do it”. And least reason: English is not my native language. I think you feel it. So, “doing it” is the best way to improve myself.