Thursday, June 27, 2013

Working class zero

What's happening here? Lost your typing-thumb, Rick?

Yes, I know there aren't much updates lately, and that I'm recycling the same room screenshots over and over again (so, no screenshot this time). And if you have followed other "hobby" projects or Mods before, than your doctor instincts may tell that these are the typical symptoms of a slowly dying patient.

Does that mean...? Nah. Nelson Mandela might pass away (peace is with him), but this project isn't dead yet. It's running almost three years now, and I've been programming the engine for at least six years. You don't think I would suddenly stop now, do you? My girl has to ask for two years before I finally fix a plank or paint the shed. And if I say "I'll do that right away honey!", it can be translated into "What were you saying honey?!". I’m lazy. But, when it comes to programming my babies, I’m very determined.

No the reason that you read and see little here lately, is simply due the amount of work. Real work I mean, a job. It's always busy during the summers when the harvesting season starts (one of my jobs is making agricultural machines, for Ploeger), but usually I can find some free hours during the nights or weekends otherwise. Or fantasize a little at the office when it’s not too busy.

This time however, it’s insane. And if I say “insane”, it really is insane. I never complain about doing overwork, but let’s just say the working days don’t stop at six รณ clock. Waking up and going to bed with work (and yes, I wake up early and go late to bed). Also in the weekends. Since I’ve been doing that for two months now, my mind is 200% focused on the job. So switching to another complex project such as Tower22 in the few free hours, is simply not doable right now. DJ Bootsy can’t mix Shania Twain with Sepultura either. The few free hours are to drink beer, or demolish a “new” old house a friend just bought. Or to see my daughter. Last time she fabricated full diapers, now she is almost five again, has tattoos, smokes cigarettes and comes home with other (5-year old) boy scum.

On top of the regular summer-work (= programming new features & helping our service guys & visiting (angry) farmers), new prototype machines have to be made. New design, new diesel engine, new cabin, new controls, new electrical lay-outs, new touchscreen, new controller modules, new graphics, new everything. And of course we didn't just plan a single prototype machine. Nope, two other machines are made by our partner companies (Oxbo & PMC) as well, and there is still another one planned a bit later. But besides just programming whatever needs to be programmed, these particular tasks brings a whole new challenge as well: working with other people!

Normally I program everything on solo (same for T22). Which is a lot of work, then again it gives you full control over the project, and you decide the tempo. When working with other people, you have to trust and rely on them. The obvious advantage of having multiple puppets working on the same thing, is that you can spread tasks and work in parallel... If you have a well oiled team at least. Luckily Tower22 gave me some experience when it comes to teamwork, though my partners here are artists instead of technicians... Artists might be more “lazy”, but technicians on the other hand are (far) more stubborn. So quite a lot time is spend on sharing documents, explaining new technologies and trying to convince them. And swallowing your own ego sometimes. Having them living on the other side of the planet, and never met some of them doesn’t help much either. Be patient and keep smiling!

All right, one screenshot then. Otherwise this post looks so boring. Diego has been drawing all kinds of decals lately. Switches, wires, cracks, stains, dirt, rotten leafs, more dirt... Oh and this environment still looks pretty clean for a horror game. Not everything needs to look like puke of course.

Always look at the bright side of work
Oh well, I’m sure things get better when we know each other a bit longer, and when we manage to finish the first machines as a team. It’s always satisfying to see the giant monsters in action as an end result. It’s just that there is a bit (too) much information, work, and new faces are coming on my plate from all directions. So that leaves no time for T22 now. I also have a second job as well, so the head simply is full. The problem with programming is that you can't just start for 30 minutes and leave it behind again. Well, you can, but putting unfinished code back on the shelf is bad mojo. Do it good / finish it, or don't start on it, that is my experience.

Anyway, fortunately, this whole situation is only temporarily. We’ll be back in action when the farm manure settled down. The other good news is that, even though they’re busy as well, some of the T22 team guys are working on an awesome monster as we speak. The mesh (by Julio) is pretty much done, and this time we have a rigger (Stephen Wong) and an animator (Antonio Yanez) to jolt it alive. No more shitty Milkshape animations from my hand! Also the environment for the next demo is almost done. And Robert made another monster we can play further with after the upcoming demo. The planned summer-release of this demo might not be realistic with all the summer-work, but hopefully we can surprise you this autumn.

And when we do that, I’ll push the demo towards a popular Dutch gaming magazine as well. The teamwork on both Tower22 and my job, learned me a valuable lesson: face-to-face. You can email, Twitter and Skype all you want, but in the end people are best instructed and motivated if you just work in the same physical place. Despite all the technology, some things will never change. So hopefully this demo + note in a games magazine can bring me in contact with Dutch artists that can come over here for a beer. No matter how late I go to bed, a better structured team is really necessary to get Tower22 done.

Another little plus of all this working, is that I earned some extras. So, let’s stimulate our lousy economy a bit by buying a Wacom Cintiq ! No, not the huge ones. Just a 12” (used) one to start with. I can’t draw for shit on my Intuos due the lack of practicing, so it would be a bit stupid to buy a professional (expensive!!) tablet and expect everything would suddenly change. If you hardly hit the road, you don’t buy a Ferrari either. Unless you have too much money… ah never mind. You get the point.

Monday, June 3, 2013

#!/Bash Linux

Time for a little brawl. Did the title say "Linux"? Oh, then you know you will get it.

Often when we read about Linux, either the author LOVES it, or HATES it. Nothing new, the majority that just "digs a product", doesn't bother writing an article in the first place. Although Linux is the kind of product that you can only either hate or love. If you fall somewhere in between, then you're not using Linux but Windows or Apple. Simple as that.

So do I. Not that I adore Windows (never tried Apple), but I have no reason to use Linux. And for my goals -programming T22 / work, playing a game, and watching internet porn- Windows just suits fine. Hence, a lot of the programs I would need don't even exists on Linux so I don't really have a choice, do I? And no, it's not the fault of big-bad-MS either that the majority of software developers only target Windows. On their turn, software developers just look at the target audience. And most of their audience uses Windows. Especially when talking about games or office related software. It's a vicious circle. And the reason why 99% of the office is using Windows is not entirely the result of Microsoft's evil Monopoly either. Linux just sucks for the office, and I'll explain why.

Offtopic. Framed one of the drawings Pablo made a while ago.

Unmasking the popular “Why Linux?!” reasons
First, before calling me an ignorant "Hat0r", I'm certainly not telling that X is better, or that Linux is an inferior product that should dissapear or change completely. Although I only half agree with some of the popular "Why Linux?!" spearpoints.

>> It's free!
True, and certainly a valid reason some years ago. But nowadays Windows isn't that expensive anymore. Besides, I work, and I don't mind paying someone if he/she delivers a good service. How about you, cheap bastard ? ;) No but seriously, we all love free stuff, but then again it's not evil to pay for a product. That's just how our world rolls. You don't work for free either, do you? Exactly.

>> Its Open Source!
So what. That doesn’t make a product automatically “good”. The idea of Open Source is that everyone can contribute free tools, and review & fix each other’s code. Of course, this is required to provide a free OS, and there is nothing wrong with this approach. But the majority of programmers isn’t extraordinary good. Not saying the Linux programmers are bad, in fact, I’m quite amazed that they manage to keep this product consistent, clean and stable so well being somewhat "unorganized". But just the label “Open Source” on itself doesn’t guarantee brilliant tools and the code to be bug-free.

On top, a programmer can write free / Open Source packages for MS, Mac, Google, Android or whatever platform as well. In conclusion, an Open Source OS isn’t worse or better than a non-Open Source OS. It all stands or falls with the qualities of the programmers and designers. And... commercial companies like MS, Apple or Google have the money to generate well documented standards and attract those few extraordinary good programmers.

>> Linux is 100 times safer than MS!
I bet it is. But here is a little statistics exercise. You live in a town with 10.000 people. 95% are Chinese, and have a vertical frontdoors. The other 5% are white and have a horizontal frontdoor. Crime statistics tell that 89% of the burglaries happen in Chinese homes. Now does that mean that Chinese homes with vertical doors are less safe?

Maybe. But since 95% of the homes belong to Chinese, the random chance is much bigger that a Chinese home is chosen for a burglary. As an extra, thieves know how to break these vertical doors, as they're very familiar with them, opposed to those weird horizontal doors. So, of course, in absolute numbers, Chinese homes become victim a lot more often. But when looking at the percentages, the whities homes are actually less safe, since 11% of the crimes happened in white homes while they only make 5% of the community.

Statistics is a bitch. Now I don't know about the actual hacker-virus-Windows/Linux statistics, but obviously a Windows computer is a much easier target. And last but not least, the average Linux user is likely more experienced with computers (thus defending his PC better) than the average Windows user. Because in general, only advanced users chose Linux. Many problems start with users opening their penis-enlargement mails, and that is something neither MS or Linux can prevent.

>>Linux can do X or Y just as well!
Yeah, but often the tools aren’t as user friendly or "complete" as their Mac or MS counterparts (though I often blame those for being bloated and too-much). Plus the number of people that use the Linux equivalents, is a lot lower. That’s not Linux's fault, but it still means that the amount of help, tutorials, teachers, books and other help comes in lower numbers as well. Not very handy if you are a newbie. Commercial companies have the power to promote and organize study materials for their products, where Open Source products have to rely on good will. The Linux community has proven to be very willing, but yet... As said in the first point, this world runs on cash.

It's an Unix system! she says. Thinking now, Linux actually could work in such a weird way.

And now some Real reasons why to use Linux
Enough sceptism. Now some things that make Linux good (as far as I know). First, let me tell a bit about my history with Linux. It’s short. Ten years ago I had to use it for some school assignments, and I hated it.

Ok, some nuance. I didn’t like most things we had to do at school anyway, so Linux wasn’t my favorite waste of time either. Plus the distro we used (forgot which one) was a lot more primitive than nowadays versions probably. But still, the other kids that liked Linux at school, either did a lot of (home)server related things, or just used it because they were nerds. Really. The type of kid that likes making jokes about Windows (starting the laugh-track), and staring at Tux (that penguin) the whole day, making them look intelligent.

Well, I know little about internet(security), routers and servers so I’m not going to argue about Linux strengths here. If it weren’t good, network operators wouldn’t be using it in such a large scale. Now my experience. Half year ago I had to start using Linux (via VM-ware that emulates it on Windows) again. For work. So whether I like it or not, shut up and work. Ubuntu is the name of the distro I’m using. No, don’t tell me Ubuntu sucks and distro X is better – I don’t care. My first impression of Ubuntu? Pretty nice! It was small, compact, looked pretty smooth, contained a file browser, and I could connect with internet without having to read spells from my Lord Voldemort magic book. Not a bad rendez vous.

Last years software design is focusing at easy big symbols again (see smartphones), rather than filling the screen with billions of functions, labels, and little buttons. Linux doesn’t look that way, but has been pretty clean and minimal by itself for all along. Which is a good thing. For newcomers, the less buttons and info, the less that can go wrong.

This minimalism doesn’t only resemble the looks. The Linux package itself can be made minimal too, making it very useful for devices that don’t have a 100 gig harddrive, six processors and an elephant of RAM memory. As you may have guessed, I have to program a machine (touch)screen for work, which runs on Ubuntu. Though Windows has Mobile variants as well, it seems that Linux is easy to strip. There are even tiny microcontrollers that can run it. This makes it ideal for embedded or lower-end devices.

This minimalism also reflects in the stability. Though Linux crashed horribly on me as well (unable to boot after a sudden computer shutdown), in general, it just seems to be less hanging, CPU hogging, memory eating and crashing than Windows. However, it’s not that Windows is crap. Windows simply has to support a wider variety of software, third party drivers and whatsoever. If I make a shit program for Linux, it will just crash as well. Nevertheless, Linux remains a more obvious choice if you need a 24/7 service. You don’t want your Server to crash, neither your machine hardware to hang. If a Boing 747 went down, the creators can’t come up with an excuse like “Sorry, but the Windows terminals also had to support the MineSweeper game and tons of other useless background stuff”. The less going on, the less chance on a crash.

Then why isn't average Joe using Linux?
Now to the point. As explained above, Linux has a set of good reasons to use. Stable, minimalistic, free, et cetera. But why is the majority still using Windows? Linux fans would like to state that MS has a monopoly position, brainwashed the market, and/or that Windows users are just stupid. Though there is some truth in that, Linux also has to look in the mirror and acknowledge its own flaws.

Though I’m a programmer, I have little patience and know-how with a lot of electronic devices. I only use 2% of my telephone functions, can’t program the VCR recorder, confuse the word "booting" with shoes, and generally don’t like spending more than 6 seconds to learn new software. Basically, I’m just as clumsy as most other common PC users. And since I often write software for that same audience, I know how to keep it as simple as possible. Office Betty doesn’t care how software truly works. She just wants a few simple buttons that do exactly what she expects. And Goddamn right she is.

Linux on the other hand forces the user to learn & type commands, and recognize wacky weird terminology. What the hell is a "Grub"? Some sort of evil forest gnome? Linux is stuffed with names like that. Short, ugly names. Grep, /etc, /opt, krt, brt, prt, Fuckt, whatever. The good thing is, if (IF) you are familiar with the environment, you can actually type paths and commands very quickly because of the short naming. But for newbies, Windows slang such as “c:\Program Files\AssholeSoft\“ makes much more sense.

Well, that's a matter of getting used to it maybe. But… I DON'T WANT TO TYPE in the first place!! If I need to install something in Linux, I got to open a terminal and do something like
.......# tar -xs shaggyballs.tar.gz -C /opt/mycrap
Oh, and though folder names are short, installation names are often much longer
.......# tar -xs shaggyballs-linux-core_1.0.4-mozillacheese 53~2.tar.gz -C /opt/mycrap
And to make it worse, Linux is case sensitive. In other words, you'll make a typo very easily. If you are afraid and new (like me) to Linux, you barely dare to hit "ENTER". Maybe I launch a North Korean rocket if accidentally writing the wrong command!

Classic example of someone who made a typo on a Linux station.

Now you can tell me "it’s your own fault, learn to type / follow tutorial-X". But no, no, NO! This is where Linux fails to become lovers with the bigger audience. I'm too dumb and lazy to train myself, and I have the right to be dumb and lazy. And so does any other user. Face it, at least 75% of the computer users doesn't know much about computers, neither wants to know. And this is exactly why a product like an iPhone becomes popular, and Linux not.

I probably belong to the other 25% that actually knows a bit about computers, but that still doesn't mean that I should train myself doing things that can be done 100 times easier. With a mouse, and a GUI you know. Ultra basic elements that transformed DOS computers into more user-friendly devices about twenty years ago. I bet it's cool to know a lot of Unix commands, and I've seen guys unpacking and installing things faster than I could do with a mouse and Install-Wizard. Yet I don't want to solve puzzles each time I need to copy a file or install something. Bottom line:
- I want to use my software - not my OS

That's right. Linux, Windows, Mac, I don't give a crap. Just as long "my stuff" can be done. Whether that is running Delphi, Qt, Paint Shop Pro, browsing internet, reading mail, writing a spreadsheet or doing a game. All the OS has to do, is making me able to start those things ASAP, and run them (stable!). That's why I’m not particularly interested in new Windows packages either. It doesn't really change my experience since 99% of the time, I'm staring at a Delphi screen instead of an awesome new app-based desktop.

BUT! Once we do need the OS to copy files, empty the trashcan, connect a new type of exotic hardware device, unzip stuff, or search a file, it needs to be as fast and easy as possible. Now, Linux can do all of that, and maybe even better and faster than Windows. But those darn terminal commands... it's like using DOS again. I'm not saying Linux should remove its terminal, commands and wacky names. Hey, if you like to work that way, you can grub-grep-sudo-ssh-ls-cd-tar-mount as much as you like. But if Linux wants to reach a wider audience, it should have visual tools as well. If I install something and find out it's a line-command tool, I generally delete it right away.

Their File Browser works nice, so why not using it for a lot more handlings? I’m sure there actually are a lot of (free) tools that can help me with this. But again, I have to find & install those first. You got to understand that most of the average users would have already given up by then. Hence the majority of users doesn’t even understand what a directory is, or how to find a file in Windows Explorer. Linux expects too much knowledge of its users.

If you wonder what the heck we've been doing last period. Well, making the walls uglier.

Well, my conclusion at least. Taste differs, let that be clear. In my opinion Linux has its strengths when it comes to being minimalistic, free, safe and stable compared to some others. It’s great weakness is it’s lacking user-friendliness. Some parts work smooth, other parts brings us back DOS trauma’s. And no, it’s not a matter of learning a bit. Most computer users don’t want to learn and if the Linux community fails to see that, Linux will never even come close to taking over the market. Call us dumb, but not being intuitive is just as dumb (at least if you want to gain popularity).

Then again, I wonder if Linux really should become an easy, widely used platform. Would the Wiz-Kids really like to see the entire office, school and mom working on Linux stations? Linux is like a small group of Gothic kids in class that don’t want to be identified with the rest. If everyone starts wearing black dresses, they’ll start wearing pink knickers. You won’t be a Linux Wiz-Kid anymore if everyone else knows how to use it as well. So maybe Linux should stay a bit difficult. I don’t find it “fun” to search 2 hours on how to create a startup-script, but I bet a lot of hobbyists actually enjoy this, making Linux a satisfying challenge. Linux offers you more control over your computer, but this contradicts what the average user want from an OS.

Moreover, if Linux would become a number one platform, then sure as hell the amount of viruses, leaks, cracks and open backdoors will increase as well, degrading Linux as a safe and stable system. Simply because hackers and other scum will target these devices much more, and a lot more of half-protected software or poorly written drivers will appear by third parties. Being Open Source doesn’t really help hiding leaks and weaknesses either, though the plus is that anyone can contribute to report or fix them of course. A bigger number of users, drivers and software will increase the number of problems and complaints as well. Certainly if the overall "computer skills" level of the users will degrade as well.

As for the popular sports of Windows / Mac / Linux / WhateverOS bashing each other on the internet fora; go ahead, have fun. But just remember you look silly if you are in blind love with one OS and fail to see the pro’s and con’s in a bigger picture. Like a ninja, one should master his tools. Don’t just use X because someone else sais so. If you can make awesome stuff using the Commodore 64, then the Commodore64 it is for you.

Now boys, this is how Linux (Ubuntu, minimal) really looks like. It doesn't work with snes-FX-chip 3D Jurassic Park cubes, it won't recognize speech or commands like "Computer, re-engage starwarp boosters now! >> Yes sir, boosters working at 98%". It looks like... a normal computer, though I still get a bad taste of the eerie "DOS" Terminal.