Testing stuff should never EVER be done by the programmer himself/herself. The reason to this is because the programmer knows what’s in the system and may look over obvious things. Tunnel vision would apply. So, why the #311 am I pulled out of bed to help the guy test? Sure, I (more or less) know the application as the back of my hand, but that doesn’t mean that I should be explaining the guy drop dead logical things. It doesn’t mean I end up showing him how to test, because in that case, I could test the application myself. And that would void all use of the test and be equal to playing Russian roulette. The biggest problems between me and the tester are:
Language differences. He’s German and is not allowed to discuss in German with me. (policy)
Programming savvy. Although it’s not a requirement, a bit of savvy in the stuff you’re doing is useful. Sure, you can even train a chimp to do the stuff, but putting a BI guy who doesn’t know how to test nor build stuff in for the task to look in the database and stuff is just plain wrong.
Whine, whine, whine. It does not help testing along nor my mood if every second phrase I hear is “I hate this”. Sure, I’ve said it about Advantage Gen a lot. But that’s the moment I let my navigator take the wheel.
To quote the guys from pure pwnage: You can train a noob, but he’ll just be a trained noob.
A very interesting article passed my attention today. No, not the one about RIAA, but an article stating that more and more students are outsourcing their coursework to India. Although it might be some kind of competence, being able to actually be able to get anything useful coded in India considering I’ve heard that much nonsense has come back, the problem remains that it means they’re hollowing up their knowledge. Sure, the ability to find something is getting more important as well nowadays, but this would cause knowledge to flow away. Sure, the people in India would hold that knowledge, but at the cost of multiple people somewhere else not knowing anything. It’s really the topping on the ongoing mention that less and less ICT knowledgeable people are around in the Netherlands.
I’ve always found “boxes” amusing. Mostly because I always visualize a comic (if you know where it’s at, let me know!) where a guy yells that he doesn’t want to be pushed in to a box, yet get asked for his IP.
There’s a broad scale of psychological disorders, from borderline to suicidal and from ADHD to Asperger. From what I’ve learnt from lessons in sociology/psychology, the prime rule is that when the analysis is made, the first question should be asked if the observation is correct. Psychology is not an exact science, after all. What one person may consider a reserved person, may very well be considered an indication for autism for the other.
Fact remains, that nobody is 100% whatever disorder and thus can’t be shoved (entirely) in to a psychological box. I’m still a bit confused that I got told that after someone got evaluated by 2 psychologists, he got diagnosed with Asperger, yet didn’t agree with it after I asked him to look up what Asperger actually means and whether it was him.
At least he knows my box well enough: “I’m polytheist, she’s monotheist…and you were anarchist, right?”
Right. Agnost or atheist would be the word. And so, the day ends. Job interview on Thursday. Quite excited. We’ll see how that goes.
Finishing up on the Advantage GEN system we’ve been building (meaning me and my pair programmer), I’ve come to learn a few insights, adding to my insights on day 5.
Even though I’m getting more skilled at building in Ad:Gen, I’m still uncomfortable with its leaks and crashes.
I have seen a couple of companies that use Ad:Gen/Cool:Gen. Unfortunately, the Dutch IRS is one of them and they are (unfortunately for them) renowned for having completely messed up projects badly. Meaning, I am very reluctant to consider going in-depth on the system.
The system is very database (ERD/SQL) oriented. Although this is not wrong, things may go terribly wrong if any database changes are made.
XCopy functionality is far from ideal considering that apart from the code, it also adds ALL the entities instead of trying to match it against entities already in the action blocks (or perhaps Ad:Gen should ask. Ad:Gen seems to ask quite a lot. Why not that?).
Reuse of code is a complete hassle unless you completely fragment the code in to tiny action blocks or create one huge monster action block that does it all. But in between, there’s no nice way to let a server handle multiple commands, as it may require different information which means that a “<none>” matching occurs. Perhaps have every command be handled by a different server block. Yay for fragmentation!
Yes, the scrolling wheel works now. I’m very happy about it as it makes my life a whole lot easier.
In the navigation diagram, you can actually “build” the screen in front of you. Now, I might be nitpicking here, but the way that things are added and are to be moved are horrid at best. I’d think that if the controls for that is changed to be more user-friendly. Delphi can do it, Visual Studio can do it. So why shouldn’t Ad:Gen be able to actually let stuff snap to grid and that sort of stuff without hitting ctrl-t for aligning all the time? (sidenote: Which idiot allowed the labels of a list to be moved independent of the row it applies to?!?)
Generating is even more interesting. It seems that even though the system seems to try and take a lot of thinking away from the builder, it’s still expected of the builder to think what to actually generate, while it would be a lot more time-effective if the system would actually figure out which piece of the model has changed and regenerate it. Or better yet: Just generate the whole damn thing to ensure that no chance exists that freak inconsistencies occur such as disappearing information between action blocks while the import/export entities are declared and matched properly.
Why the hell is a NOTE (comment block) placed way way in the back in the statement list while an empty line is not? While at the subject, why does the CR finalize the NOTE entry window? One line doesn’t cover all the comment required.
Ad:Gen seems to have trouble seeing the big picture in a model when making the treeview in the navigation diagram. It will grab the block that you’ve chosen to view, but doesn’t put it in the big picture. Instead, it makes an unreadable view of everything it uses, recursively.
But the biggest lesson I’ve learnt from using Ad:Gen is that it’s a great coder torture device to test and train a person’s irritation levels. Even though I’ve survived using this tool, I hope it will also be my last time using it.
I’ve been to the Q-society conference yesterday, trying to get a better insight on the future of quality assurance. Considering I’ve been taking interest in quality a bit more lately, I’ve looked in to CMMI and did an appraisal session for a project.
It’s quite interesting to hear over and over again that there are less and less IT students starting and even less actually graduating in The Netherlands. And everyone’s guessing away why the hell that is happening. I can go guess as well, which ranges from the knowledge that IT is being outsourced/offshored to India and other countries making it a risk to go for, but also the stigma that you’ll end up in front of a screen for the rest of the life.
And yet, every company and governments are screaming for IT people. On the other side, there’s a shortage in people period. When I was a little nub, I was told that if I wanted to work during the vacation, I had to be early with signing up for it. But when I look at my mailbox I assigned for vacancies, it is completely cluttered up with jobs now. Whether that’s for good or bad, is up to historians. I fear the worst.
Last week, me, my love and my stepson went to the Japanese garden in the Hague. I must say that it seemed quite small considering the size of the entire park that’s located there. But nonetheless, we made a couple of nice pictures (note: Not all of them. Taennyn + Smiling = No good picture)
Although we came to the garden quite late (pretty much the last weekend before closing for the year), it looked quite interesting. The contrast to Chinese gardens is that Japanese gardens mark themselves as calm, still and small gardens while Chinese gardens are flowing things (keyword: waterfalls).
The garden clearly mentioned that you shouldn’t wander off the path, which was because of the delicate moss that replaced the grass. Unfortunately, as we came quite late in the season, it was deteriorating already. The paths were very interestingly indicated. Instead of a solid fence or something of the kind, 2 bows on each crossing shows the walkways.
But as with most oriental gardens or structures, the most prominent parts of the structures, are of course the religion. We found quite a few, including a gravestone.
For those who don’t know what kind of fire that means: Electrical fires. My laptop adaptor has ended up burnt because of a malfunction/short. Bottom line is that I was lucky I had most of the laptop disconnected and no further damages were sustained, but I’ve just spent 30 euro for a new power adapter.
I’ll leave it to common sense to understand I prefer not repeating that practice.
For some reason, the events of today reminded me of The Secret that someone threw at me a while ago. The thing is that everything that happened was somewhat predictable (such as the complete failure on my side today). But what is really going to boggle the noggin’ is whether the information shown in The Secret works the way it’s told, or is actually the other way around.
Of course, you might wonder what this whole “Secret” is. So, without much extra dawdle from me, a link to The Secret.
Today has been great. Not only did I get the chance to “spar” against one of the people at this whole Ad:Gen mess, but it was actually fun for a change unlike some people who just code spar to win. Blowing stuff out of the sky is really really easy. You can just whine about database structures that you personally dislike (what’s the problem with tablenames in plural? It’s a set of entities, dammit!), but keeping it fun for all is a lot harder.
And after discussing the butt-ugly (LITTARLY!) Renault Megane and the just as ugly Fiat Multipla, we ended up wonder who has been sniffing, swallowing, injecting, etc drugs today. How else can you justify this on the net? (if there are small kids in the room, please send them away for a bit. It might induce nightmares to tykes)
I am not much of a gamer, I often say. Even though I have an Xfire account which shows pretty much every game I’ve played lately (apart from the undetected ones), the 36 hours of C&C Generals has overtaken the 31 hours of “fitness” StepMania. But considering Generals has left my hands again, I’m saying bye to the SCUD launcher and back on the dancepad (results are shown here). Upgrade with scrap repair.
Well, it seems that mail in America towards Germany goes quite slow. For some strange reason, U3 Tibia has caught an eye now while the mail about the matter went out way way back.
I’ve run in to a bit of a problem in that stuff, being the updates. It turns out that the way that U3 works, messes up the update process. Files located in the U3P file will be largely sent to a user’s application data.
The exec folder located in the U3P file is extracted as soon as it’s being run and sent to application data of the user currently running. When the Tibia client is closed, the files stay in the application data as a cache so it doesn’t have to be extracted again if the user tries running it again.
However, as soon as someone disconnects the U3 drive, the exec folder is removed from the application data, which means the program on the U3 drive won’t be updated. Although I guess that this problem can be solved by not packaging the program in to an U3P package, but placing it in the exec folder instead and running it from there (no idea how to do that), it might add an extra strain on the U3 disk.
Well, seems there’s a fun thought there for the guys and girls at CIP.