Drawbacks of Open Source

I recently re-investigated the PEAR LiveUser package - it wasn’t suitable for “grab and use” a year ago - and I was surprised to see that the changelog for this package is 4 years long! Come on, guys! What’s taking you so long?

At least there’s now installation instructions for it :-)

But really, sometimes it’s quicker to re-invent the wheel and have your custom authentication system done i two days and reuse it - getting accustomed with LiveUser’s documentation and API would take a comparable amount of time - and bugs you’ll find will be yours bugs, not the ones in highly complex code written by an alien team of people.


Comments

Why does Proper Web Development matter?

Comments

Catching up after 6 months of absence in Open Source realm

Having monitored the Planet PHP feed for last 6 months I felt there wasn't really all that much I needed to catch up on in PHP/MySQL realm, but the things that caught my eye were:

  • PHP IDE by Zend - I still cannot get it to work, it's so early in the life cycle, that it doesn't even have ANY manual or documentation on the website - scary. I'd like to use it instead of buying a license for Zend Studio, but I'm not sure if I can wait any longer - or if there's point in waiting.
  • MySQL 5 finally gets first users. That version has some of the features of more complex RDBMS, like triggers, views, stored procedures etc. But I'm concerned about people using stored procedures in PHP - I've seen how they are often abused in Microsoft realm and wouldn't like to see that kind of “abstraction” in the PHP world. Other than that - it's good that MySQL finally has similar functionality to PostgreSQL, it's time to evaluate the pros and cons of these databases and do another comparison.
  • Zend Framework! At the moment it's still v 0.13, and while the specification changes daily and you cannot really use it yet - it looks promising, for having the Front Controller built in and enforcing Proper Views in MVC. I'm looking forward for some better database abstraction (Object-Relational Mapping), because the built in support is really a wrapper for PHP5's PDO, which doesn't make developers free from using SQL statements all over the place.
  • PHP 5.1 - nothing new there, except of the built-in suport for PDO. But I think that PEAR_DB did the job well enough, so the developers' productivity gain from it won't be significant (unlike the scripts performance which will increase dramatically).

That would be it - at least in terms of general purpose tools and techniques in the PHP realm.


Comments

It’s now official - I’m available for work

I’m now looking for a contracting position in Central London or South-East England (I don’t think there’s any chance of finding such position in Kent where I live ;)

Also, the preview versions of my two companies’ websites are now live:
Reliable Systems Ltd (during registration)
And ComeOnLine

This is both exciting and scary, I always had a permanent position and the prospect of having to fight for each commision and attend interviews triggers the all the primal instincts in a human ;)

Anyway, if you’re in need of some LAMP development, or consultancy, are seeking a partner in a new and exciting business venture, or just want to chat, just drop me a line (marcin [at] brzezinski.net)


Comments

Are you preparing a presentation?

If so - then your basic resource should be the Presentation Zen Blog!

And especially read these tips here.

You'd be amazed how much these “small” things mean (and how thin a boundary between a good presentation and a boring monologue is!)

Comments

The future’s bright

It seems like the maket forces in the UK are more and more favorable for the e-commerce than high street shopping - and that is a good news, there’s still plenty of opportunity to invade the web with your online shop and start building a customer base - there’s a long way before the market gets saturated, and I think the growth accelerates every year.

But the question is - if we know more and more people will want to buy goods online, and want to sell it to them - why won’t the high street suppliers handle the e-commerce side of thing themselves, completely eliminating the “middle man”? That might be a danger for all the small online shops that spring each day, and if it comes to our market sector (web development) - that might mean a decline in number of potential customers interesting in opening their own online shops - who needs another online grocery if Tesco.com delivers your stuff to your doorstep?

I think we’ll see a lot of consolidation in the e-commerce sector now, so we really live in very interesting times.

But in spite of all the consolidation that goes on I still see a lot of opportunities for niche companies to really bloom and blossom - hence the future’s bright.

Comments

New generation of computer games

Have you seen The Spore?
I must say, after I first saw the video - my jaw dropped.
This isn't a revolutionarily beatufil game - but the gameplay and the sheer amount of detail your computer stores while playing it is just awesome!

I've never even thought about anything like it in my life, games were always limited to a “genre” - car racing, city building, flying airplanes, boxing etc.

This one is different - it allows you to be a ”small god” for your race of creatures, create them, control them, and modify them (by a controlled evolution) as you go. You start on a cellular level, then go through all stages of a creature's life, then you advance to the tribe, town, nation, planet, and eventually - interstellar travel!

What makes it so cool is the fact that decisions made in the early stages of your game are actually propagated throughout the game - if your creatures will have 3 legs - they'll be driving 3-legged cars!

Another thing which is just brilliant about that is the online gameplay - you're never sure what you'll encounter on other planets - these are not planets generated by your computer - they're actual games of other players, downloaded from the Internet!

I am not an avid gamer myself, but I can't wait to see that in action!

Another game worth mentioning is Second Life. I'm not sure if the word ”game” still applies to it - basically what it is is a whole world that Internet players/gamers live in, spend time, meet up with other people, and even - what makes it remarkable - invest and conduct business!

How on Earth would someone want to buy a “property” in a digital world of a game?

Don't ask me - but there are such people.

And to make matters worse - they use normal, physical currency! Insane!

(I know, in XXI century there isn't a thing called “physical currency”, all the transactions are conducted by computers anyway ;)

I'm absolutely thrilled for the new possibilities that this new wave of games brings, but I'm also very concerned about people which don't do very well in physical life - that they'll become addicts of these virtual worlds.

Internet addiction is a serious thing, and this kind of entertainment certainly makes the numbers grow amazingly fast.

Really, having Today's technology on the doorstep it isn't so hard to be totally alienated socially and don't have any physical friends to talk to. Scary.

Comments

Productivity tip #4 - Embrace new technologies

No, you don't have to be on top of every news that comes into your RSS reader every day.

You don't have to be proficient in all new technologies that appear daily.

But you can at least try, and I think you should try.

Not to know it “all” but at least know the advantages and disadvantages of each solution, e.g. using Object-Relational Mapping as an alternative to Stored Procedures in MS SQL which return DataSets.

To know the difference between various coding techniques - will you want to develop each “page” of your application by copying the code from the previous ones, or will you embrace the Custom Controls mechanism built in into ASP.Net? Will you mix HTML with PHP code, or maybe you'll invest your time in learning how to properly use template engines?

All these things might seem like a hassle and a waste of time - because you already know HOW to do something. And that fact itself - “know how” - if not taken lightly - might badly damage your attitude towards learning new skills and technologies.

You might be good at “doing websites”, but if you won't be interested in “the greener grass on the other side” you'll always be doing just that - what you “know how”.

Sorry guys, but the technology world now runs as crazy, before I managed to use Ruby on Rails for my first project we already have the second version of the framework ready, and some companies are springing up which specialize solely in that technology! Awesome!

And scary, at the same time.

So, what will you start learning Today?


Comments

Productivity tip #3 - never trust your ISP

Don’t take this literally - ISPs are great when they don’t cause you any problems, but no matter how good yours is - try to have the latest backups of your data/system/code in your own network, and preferrably - on a physical media.
You never know when you’re going to need that.

Even if you use code versioning tool - because not only versioned code can be at stake.

You might have some data on the live servers which you can’t reproduce, whether it being user information, some images that you’ve uploaded using the CMS, or maybe recent transactions.

I strongly recommend automating this backup process for the sake of peace of mind, because even if your ISP does provide backups, it won’t always be quick to recover something from them - the more control you have over your information the better.

And as history shows - not every ISP includes backups in their offer.

The automatic backups of data stored in other networks aren’t so easy to achieve on Windows platform, but on Unix/Linux it shouldn’t be a problem as long as you have enabled the SSH access to your accounts - few scripts should do the trick.

Obviously this might be a huge security hole, but you just have to weigh the pros and cons.

Comments

MicroISV considered harmful?

I was wondering Today, whether the MicroISV model of developing software is a good thing for the Software market sector, or the contrary - after all, when solving A Problem can take one person few months, and they can charge Little Money for it - that means, that other people/companies lose the opportunity to solve the same problem in a similar way - and charge more.
I think this might result in a canibalisation of the sector to some extent.

While it's obviously a perfect business model for independent specialists, the bigger picture of software industry might suffer from little, but disruptive startups aiming to solve small problems accurately. The microISV can agree to smaller revenue stream (and that leads to smaller prices) than a “proper” company, so that could mean a shift from office-based collaboration to online-placed collaboration.

What I'm not sure about is:
Is there a constant set of problems for software to solve?

Or maybe the requirements for software evolve every other day, and new problems and needs of people in the market are created?

I hope that's the latter.

Anyway, keep your eyes open for the software industrialisation trend and small, but disruptive competitors from the microISV field.

Comments

« Previous entries · Next entries »