The Big business myth – Is bigger always better?

At last, perfect replacement for Outlook Express and Windows Live Mail is available, called OE Classic - Click here to download!

What is it with us that we are so easily impressed by the size of company someone runs? Perhaps it scares the heck of us that a company of that size is managed by a guy/gal we know. It is one of the common myths in business to size up the company by the number of employees working for it. Bigger is better and more impressive.

If you have a conversation with someone and he/she asks you: How big is your company?
Your reply might be: I have over 100 employees.
The response you would get might be – Wow, nice!
You received a form of compliment.

If, instead, you answer – I have 2 employees.
The reply might be different – Oh, that’s nice.
Just said to be polite. Not impressive at all.

However, in reality the bigger is not always better. Sure, there are cases where it really is. But it also creates unnecessary drag. For this reason alone, quite often, big companies would prefer to be smaller. Does your small company strive to get bigger for wrong reasons?

There is another thing with big companies – quite often they are disconnected from their end users and don’t entirely understand their needs.

I have example related to this in our own company – we’ve been making income just from using disadvantages of Microsoft (and a few other companies) products and filling the needs of real users in our software like yDecode and OE Classic. The thing is that the gaps we’ve been filling with our software had existed for decades and nobody in large companies ever took notice. Fixing the gap in their software would require maybe 50 lines of code – if they could notice it, that is.

That is the difference in agility of a small vs. large company. Think of small company as a small motor boat while big company could be a large cruiser. Obviously each one is better for their purposes.

What I propose here is neither of those two. The idea of perfect sized company doing work the most efficient way possible is my idea of a perfect business. Find the right size for you and stay that way. Maybe it is 5 employees, maybe it is 250 and maybe it is outsourcing the whole thing without any regular employees. It’s your choice to determine which size is perfect for your company.

So next time if someone asks you how many employees you have – be proud with your answer and don’t care about their reply. After all, you do have a business and you took responsibility of your life by running it. You’ll miss the simplicity of doing business you have now, when your business becomes big. Or even better, find the perfect size for your company and stay that way.

DuckDuckGo – new search engine that might hit jackpot

At last, perfect replacement for Outlook Express and Windows Live Mail is available, called OE Classic - Click here to download!

If you thought that in the search engine world everything is established this might be a nice little surprise for you.

There is a new player in town and it’s called Duck Duck Go – http://duckduckgo.com/ – well, not exactly new, it’s been around since April 2010.

Despite of its funny name, the interesting thing about this new search engine is that it doesn’t try to compete with Google (which is nearly impossible) but instead it hurts Google where it hurts the most – privacy issues. With increased concern about user and search privacy and new Google privacy policy recently introduced more and more people are looking for an alternative way to search. It also adds wisdom of crowds to the search results (e.g. from sites like Wikipedia) to better fulfill search requests.

Will this one hit the jackpot? We’ll have to see – according to their own public search statistics their traffic is increasing and it looks much like an exponential curve to me – see it yourself: https://duckduckgo.com/traffic.html

Did I also mention that it also gives pretty good search results? Try it out yourself and tell me what you think.

111 years old light bulb

At last, perfect replacement for Outlook Express and Windows Live Mail is available, called OE Classic - Click here to download!

You know how things happen to break just a short time after the warranty runs out right? We’ve all heard stories how they don’t make things to last anymore.
Yea right – but we live in modern times, today we can only make things better!

Well, this story is about 111 years old light bulb – it’s called Centennial Bulb. And it is not the only long-lasting bulb, there are a few others but less known. Coincidence or better engineering? The latter, I believe.

As it appears, the bulb has been continuously on for 111 years (since 1901) with just a handful of times being turned off for short period. That’s over 972360 hours. The irony is that it outlasted a couple of webcams that have been recording it. And that today’s so-called modern light bulbs are guaranteed to last for 1000 hours. In the early days light bulbs were guaranteed to last for 2500 hours (and then re-engineered to shorten life span instead of the opposite).

Planned obsolescence anyone?

It is not an amazing sight (especially their website) but it is worth seeing or perhaps even visiting the place.

Take a look here:
http://www.centennialbulb.org

And webcam sight:
http://www.centennialbulb.org/cam.htm

They certainly don’t make things like that anymore.

Here is an interesting documentary on the topic:

https://www.youtube.com/watch?v=I5DCwN28y8o

Internet safety and how to protect yourself online – proven and reliable tips

At last, perfect replacement for Outlook Express and Windows Live Mail is available, called OE Classic - Click here to download!

I am quite often asked by individuals or companies how to protect yourself and your computer online – you know, the usual stuff – avoiding viruses, spam and such things. Often, the rationale is – “If I bought the computer and service from my Internet provider – it should all work flawlessly right?”

Well – not quite, the story is a bit more complicated than that. If you are not a car mechanic you don’t service your car – you leave it to professionals. But unfortunately, the perception is not the same with computers – just because you keep them in your bedroom doesn’t mean they are any less complicated to maintain and that you can use them carelessly without knowing what you are doing. You do need to learn to drive your car, don’t you? Well, computers are zillion times more complicated than driving a car but fortunately, there are some simple rules you can apply to make them easier to handle.

As a software publisher, security to our users is of utmost importance – so we have a set of rules you can all use to be safer when connecting to Internet (but also when designing software too). Here they are in arbitrary order and in plain language without too much technobabble.

  1. Use original software – Original software at least gives you a certain level of guarantee that the program hasn’t been tampered with (software developers and virus-makers are both engineers after all) and with pirated software you cannot be that certain. This doesn’t mean original software is any more secure if the authors don’t apply the security measures themselves.
  2. Apply software patches and updates religiously – especially if computer is connected to Internet or if the software is Internet-related. In Microsoft Windows this is called Windows Update and for Microsoft Office it is called Office Update. Many other programs from less known companies also have their own update mechanisms – use them! This also applies to online-software (blog software, forum software and similar). Also to bust one more myth – people often claim that Macintosh is more secure than Windows-based PC. Not really true – in fact, there are security leaks a few months old in OS X and still not taken care of. Similar goes for iOS and sometimes for Linux too. So if you paid it more that doesn’t mean it is automatically more secure. Windows are most popular but for this reason alone their emphasis on security is at higher level. I’m not advertising the use of any of these systems, just pointing the fact that software developers do need to patch their software too as well as their users.
  3. Use latest version of your Internet browser. These days any is really good and a matter of choice – IE 9 is as good as Chrome 17 or Firefox 10 (yes, I know about Safari and Opera too). Yes, there are differences, but they are all very competitive. When using the latest version you make sure you have all the security updates all the time.
  4. Use firewall and anti-virus (anti-spyware) program. Paid or free is a choice of yours but more often, paid has more advantages – and these guys are constantly into security leaks and patches. Use their wisdom. Companies I would recommend are Kaspersky, Norton 2012 products and the one I personally use – NOD32. As for free variants I like Avira – has some quite nice features but AVG or Avast are also quite good (I did not go too much into virus-detection charts as they change all the time). Note that they can’t be used as substitute to Windows Update – you still need to have fully patched operating system. Fortunately, with Windows and antivirus software – update mechanisms are very easy to use and completely automated. Firewalls on the other hand will stop software to send outgoing data unless you permit them to and with most of them you can do this on individual program level.
  5. Quick guide to less reliable software sources – Even though you should install software from reliable sources, sometimes you might need to install something from less known manufacturer. Note that digital signature doesn’t mean software is more secure – Gator Corporation for example had fully legit digital signatures while their software was installing spyware. Good way to install unreliable software is to use Sandboxie. The solution which I use myself is virtualization – a full operating system within isolated environment such as VirtualBox or VMware Workstation. The idea here is to install software in a controlled environment and not onto your main operating system. If the software or manufacturer proves to be reliable one, you can proceed to install it onto your main system, if not, you can easily remove it or restore virtualized operating system image to starting one.
  6. Read those “Do you want to…” dialogs… for God’s sake! Don’t just click “Yes”. I am always amazed how many spyware, toolbars and similar things are installed just because user doesn’t read whatever is offered on the screen. Do not install software if you are tired.
  7. Do not use unsecured or low-security WiFi – There is always someone listening to such connections – this is probably the easiest way to steal passwords. WEP encryption is easily broken, with WPA and WPA2 you are a bit more secure. But it doesn’t hurt to add additional level of security – make sure you always use HTTPS (secure) version of web sites if available (Facebook has it and Google has it and so do many others). Make sure you always use SSL/TLS-encrypted connections (for Email access, for Usenet access, for web access) wherever possible and available.

I tried to minimize this list as much as I could but security issues are not something that should be taken lightly and you should at least do those minimal measures I’ve covered above. Of course, me – as software developer has quite a bunch of others like – checksuming (MD5, SHA1), comparing binaries by content, compiling software in an isolated environment (like virtualized operating system), making a copy of installation file before running it for testing or storing it in non-compatible environment (for example Windows binary hosted for download on Linux host – where it can’t be executed) and much more – but I don’t think these should be presented to average user that just wants to use his computer without having to worry too much – after all, software can be very complex and needs to be as easy for the end user as possible.

Another bug in Delphi PopupActionBar – Vertical menu shows no scrolling arrows

At last, perfect replacement for Outlook Express and Windows Live Mail is available, called OE Classic - Click here to download!

Today I encountered another problem with TPopupActionBar in Delphi / C++ Builder – vertical menu arrow was invisible. I was using it because it is apparently the best component to be used with ActionManager but as it seems, it is half-baked.

Here are bugs I discovered so far (with a little help from our customers):

  1. When menu is very tall, taller than screen height, PopupActionBar won’t show up/down arrows for scrolling content as first and last items, while regular PopupMenu does show them (thanks Carroll for notifying me).
  2. Furthermore, PopupActionBar is very slow and unresponsive (opening very tall menu takes visible amount of time – I did’t measure it but it looks like more than half a second) while the regular PopupMenu opens instantly. Selecting another item in PopupActionBar can sometimes be very laggy (sometimes old menu item that has subitems does not close as you move mouse over another item so you have to move around again until it updates).
  3. When menu item has subitems and it is disabled – it is still displayed as enabled during runtime.

Here is a simple C++ Builder code to generate very tall menu to demonstrate the above point 1:

for (int i=0; i<100; i++)
  {
  TMenuItem *mi = new TMenuItem(PopupActionBar1);
  mi->Name      = "TestName_"   +IntToStr(i);
  mi->Caption   = "TestCaption_"+IntToStr(i);
  PopupActionBar1->Items->Add(mi);
  }

And this picture show point 3 in action:

Delphi PopupActionBar Bug
Delphi PopupActionBar Bug

Obviously, we are moving away from PopupActionBar. And as it seems it is not the only thing related to ActionManager controls that has bugs – if I remember correctly – ActionToolBar also had some issues. So I might very well guess that ActionMainMenuBar might have similar problems with vertical arrows or speed.

ActionManager is very nice way to organize code but the components designed to work with it are half-finished and I wouldn’t recommend them.