Arien vs. The World

I can’t remember how, but I came across the DreamBuildPlay Challenge website a couple of weeks ago. I had seen XNA last year and while it looked interesting, I had no real motivation to use it, so I moved on and forgot about it.

This time it was no different, there was no motivation to learn. But, suddenly there was… I couldn’t wait to get back home and start working on it.

No, it didn’t cross my mind that I could participate in the Challenge, hehe. What changed, then? I just thought to myself: “What if I *had* the skills & experience to participate? What kind of game would I build?”. And those simple questions made my mind go wild and enter in one of these brainstorming trances I have so often. And I came up with some nice game ideas, if I can say so myself!

I’ve been toying around with the framework for these last two weeks and I must say it’s easy to learn the basics and there are some good guides around. The documentation is also excellent. I managed to create silly sprites (actually the hardest part was finding some decent graphics, heh) that move around, walk, grow, fade… Keyboard and mouse input is easy to handle too. From here on it gets complicated, but I’m not going to rush it. First, I want to gather all the ideas I had and define small steps to create something nice, bit by bit.

I still have no interest on participating in the Challenge. I know my current knowledge of XNA is close to zero and any attempts would end in frustration (maybe I can in a year or two… or three). But! I have now a reason to learn and to refresh my C# skills on the process (I had been looking for an excuse for some time). Plus I’m chasing one of my childhood dreams: game development!

I finally took the first part of the MySQL Certification Exam and… it went quite well! I passed with a wide margin, although since I didn’t study much I couldn’t get an outstanding mark.

The exam was not easy, but didn’t feel that hard either. It contained 70 questions, most of them with multiple answers. I had to sign some sort of NDA before the exam, so unfortunately I can’t give details on the contents of the questions. So I will just say: study hard and make sure you understand all the lessons.

Maybe it sounds a bit silly that I give advice such as “study hard”, while I also said a few lines above that I didn’t study much. Well, I’m part of the lucky group of people who just need to read something once or twice to remember it, so I don’t have to study for days to pass an exam. It’s not really photographic memory, just feels easy to remember certain things (not everything). That’s how I passed most of my exams when I was in primary and high school. It didn’t always work with things like Maths, where you have to fully understand, rather than simply memorize, but then I also understand things quickly, so it wasn’t a problem either. It just required a little more effort than usual.

Nowadays, this “ability” of being able to remember things easily has diminished, probably because of underusing it. But this exam proved it still works for me. Which doesn’t mean it will work for you. So I won’t tell you that it’s an easy exam and you can pass it without studying. Please, do study and make sure you understand what the book is telling you before attempting to pass it. If you do that, you don’t have to be scared.

Good luck! 🙂

DNA pattern

DNA pattern

My friends Katrin and Jens made some time ago a website that featured pictures of our chromosomes DNA. And how would they manage to make pictures of them, you might ask? Well, as you might know (if you don’t, click links above), our DNA is composed of molecules called bases, that are disposed into a certain sequence. This disposition is what makes us human. Anyway, imagine assigning one color to each one of these bases and then print the sequence. Yes, that’s how they made it. And it looks pretty, doesn’t it?

But they went a step further now! What about turning these images into audio? Easier said than done, but nonetheless, they did it again. Their website started broadcasting this week,  starting from Chromosome 1, and was even featured in Slashdot. They calculate it will take 23 years and half to broadcast the entire human genome sequence. You don’t have to listen all the way, don’t worry, but if you are interested in knowing more about yourself and the fine piece of work you (we) are, tune in!

… something beginning with K…

Meow?

Meow?

Seen @ the awesome CuteOverload 🙂

I just came back from assisting to a workshop organised by SeedRocket, I went there with some colleagues from work. The two speakers were from Friend2Friend, a website which I have to admit I didn’t know, but that looks pretty cool from what I’ve seen.

I’ve been interested in learning about the Facebook Developers platform for a while. I think I’m even signed up already and explored around a day or two, but since I didn’t have anything interesting to develop in there, didn’t really put any energy into it. I thought this workshop could be a great opportunity to dive into it and see if I could get at least a sparkle of interest out of myself for this system. And I think it worked. Now I just need a good idea to practice what I’ve learned!

The workshop was supposed to last one hour and half, but with our questions (specially from one of my colleagues, he didn’t shut up at all, haha) it was prolongued to two hours, although we could have gone on a bit longer even (we were politely told to stop). The contents of the workshop were very interesting. They showed us how Facebook Connect worked (I’m noting this down for my future non-FB projects) and the types of applications that could be built into FB. I didn’t know we could use iframes for apps, I thought everything worked with that FBML syntax they invented (FBML, FQL, FJS… seriously, who put these names?). Anyway, we also got to see what to expect when creating an application and saw some of that FB code, which didn’t look that horrible, hehe. Lots of questions, lots of answers and lots of conclusions made it a very nice presentation overall.

On the way back home I had some time to digest all this information. Sounds really good. But I suppose not everything is super fantastic in the Facebook world, because this precise morning I came across this blog post (coincidence or conspiracy?). The comments about it at HN weren’t exactly FB-friendly either. The speakers at the workshop didn’t put it as the promised land and admitted it had bugs (and some funny little things), but they said it wasn’t bad at all and the FB devs are cool peeps and do a good job with it. So my conclusion is that it’s probably like any other 3rd-party application. Awesome when it works because it saves you time, but awfully frustrating when it doesn’t do what it’s supposed to do, because then you have to spend time digging in someone else’s code. And we know that’s the thing we developers like the least. Our code > everybody else’s! True story!

Ah well, besides all this, I had the chance to see a lot of people I hadn’t seen in years (old coworkers). Was actually surprising to see so many familiar faces, I’m not used to it as I don’t really socialise within the programming Barcelona world. I’m looking forward to assist to more of these workshops! Thanks to SeedRocket and F2F for this one! 🙂

When I started studying for the MySQL Certification Exam I thought the first chapters of the book would be rather boring. But at least that didn’t happen with chapter 5, which talks about data types. I have probably been lazy on reading the documentation of the last versions of MySQL (or all versions in general), but I did learn a lot in this chapter.

For example, I thought the VARCHAR type could only hold up to 255 characters on MySQL. And welllllllll… That was true until the version 5.0.3, which allowed VARCHAR to hold up to 65.535 characters. That’s quite a huge leap, and I really wasn’t aware of it, pfff. I usually take TEXT as the field type when I have something that might be bigger than 255 characters, but from now on, VARCHAR it is!

Also, I saw that DATETIME fields take a lot of space compared to the other temporal types… It’s cheaper to store DATE and TIME separatedly, heh. Oh well, that’s another mistake I won’t make again.

I also learned a bit more about collations and differences between them (binary or non-binary, case (in)sensitive, etc). I always kind of wondered why we were using this and not that collation but wasn’t curious enough to look for the answer or ask about it. Now I know, and the book explanation is great.

But it wasn’t all about new things for me. Fortunately I could recognize most of the things I read on this chapter, so I didn’t feel like a complete ignorant :P. For example, I knew a great deal about the SET type, since I’ve used it before, and how it differs from ENUM fields. One funny thing that someone mentioned when we were checking our exam answers today was, that ENUM fields can hold so many members that it would be easy to add the names of all the towns in Spain into one of these. There was a general LOL about it, but after that session I was looking up some VARCHAR vs CHAR debate information and found this post on the MySQL Performance Blog. Turns out his idea isn’t really that crazy (performance-wise, at least).

Talking about VARCHAR vs CHAR, I was also successfully able to explain why CHAR might be better in some cases than VARCHAR (even if it takes more space). This wasn’t explained in this chapter and I found it weird, but I’m glad we got to talk about it, generated a nice debate for the peeps remaining in the class (some had left already) and nice conclusions.

Ah well, from this chapter I’ve learned and shared my knowledge and I’ve had quite some fun reading it. And I definately won’t let all these little pearls go to waste. From now on, I’m going to be more careful when I create new tables. The next step will be to learn to create better queries (or maybe find out that the ones I write are already super efficient… but that’s wishful thinking :P).

I hope the rest of the book is as interesting or more. This was about the best thing that happened today at work and I want it to stay fun and challenging!

As I commented earlier in the blog (time sure goes fast; was that really 4 months ago??), at work we have as objective for all us Web Developers to pass the MySQL 5.0 Certification this year. This certification consists of two exams: MySQL Developer and MySQL DBA. Both of them have two parts, so that’s actually 4 tests to take. But we are only required to take the MySQL Developer ones, not the DBA.

MySQL 5.0 Certification Study Guide

MySQL 5.0 Certification Study Guide

For this task, we were given this huge book to study, 650 pages long! Although, we “only” need the first 350 that are aimed at the MySQL Developer exam. The book comes with a CD with some sample questions, although we’ve been told that these are much easier than the ones in the real exams, so I’m glad we’re having some practicing sessions at work to test our knowledge and share results together.

For the record, one of us already took the exam and passed without too much trouble (so it can be done, ha!). But gah, I dislike multi choice exams with passion… I’ve always been clumsy with this kind of exams, forgetting a bit here and there and… bleh. I’m confident that I can pass it, but I really want to get a good grade and multi choice isn’t the best for it.

But whatever, I’m getting all the bad thoughts from my mind and I’m going to do my best on this. I started reading the book and so far it seems easy, mainly because I’m refreshing things I’ve been using for almost 10 years. Things will start getting nastier in the second part of the book, I bet. I have seen views, stored procedures and triggers in the manuals, but never actually had the chance to use them (well, I did use views once, but just for testing purposes). The examples in the book seem very clear, hopefully it won’t be too boring and I’ll get quickly through all of it 🙂

Good luck to myself (and my colleagues)!

A couple of days ago I was reading one of my favorite sites and I saw someone requesting feedback for an idea. As I read it I was thinking, “this can’t be happening!”. I had the exact same idea a couple of months ago!

It’s not really the first time that I have one idea and I find it already exposed (or even executed) after doing some research. I mean, it’s rather hard to come up with something that nobody thought about before, isn’t it? So many brains thinking at the same time, it’s bound to happen… So, I wasn’t surprised by it that much. The shock came because the line of thinking we both had was actually the same, almost word by word. You can approach this idea in many, many ways, because it’s really simple, but he took exactly the one I did.

Right after reading his message I felt like something had been stolen from me, and I don’t mean the idea itself (OK maybe I do, but just a tiny bit), but the excitement about it. But at the same time I felt happy to see that someone other than me had the same necessity that made me think of it, because it meant it really was a useful idea. Disappointment and reassurance. I was kind of stunned for a few minutes, thinking about this issue and about how I reacted (I swear I should have studied psychology, human reactions are just too amusing, specially my own).

I was really curious about what he exactly had in mind, so I wrote to him so we could talk about it some time. As I said, I had this idea a couple of months ago and thought it would be very useful. I tried to find something similar but there was really nothing out there. So I wrote the specs of the idea and put it in my “ideas box”(tm), as usual. I asked around and didn’t get too good feedback, so the idea remained on the box for the last two months. Until I read this message. After the initial mixed feelings I’m inspired again to work on it.

Now I wonder, how long will the inspiration last? But I know the answer already. Right until another brilliant idea crosses my mind and makes me think this is a silly waste of time compared to it. And at the rate I come up with new ideas, I probably have about half day left… SIGH!

When you work on a company that is known to a certain degree on the internet world, you can find people who like it and people who don’t. The extremes (love it/hate it) are usually the loudest, specially the haters (e.g. Microsoft) although the lovers can also be quite loud sometimes (e.g. Google, Apple).

But what do you do when you work in one of these companies (no, I don’t work for any of the mentioned above, uh) and meet a hater? When they say, “pff, that company is just a bunch of scammers trying to get your money”. You know that’s not true, because it almost never is. Companies exist for money, yes. But successfully companies don’t raise to the top by scamming people. They do by providing services, which some may consider more or less useful, but that’s subjective.

Look at Microsoft. Many Windows haters, but where would computer world be without it? Would be either restricted to geeks who can use Linux or people with enough money to buy Macs. How lovely.

Anyway, I digress. What do you do when you meet one of these haters? Whenever I read or hear someone dissing my company like that, it just gets on my nerves. It doesn’t really matter what they say, since they are not users, just outsiders with big mouths. But still, it pisses me off so much. They don’t understand that people in these companies are just normal people, like you and me. That their work isn’t to scam anyone, but try to help by providing a service. And that we need to pay our bills, so we don’t mind if we can get money while providing such services. Is that so bad, I wonder? Is it??

Sigh.

At work we can ask for formation, courses, etc. to expand our knowledge in our areas of interest. Finally we have resources dedicated exclusively for this task, and woah, they’re out of bubblegum! They want us to take the MySQL Certification exams this year, to know PHP5 as if we had coded it ourselves and so on. It’s nice to know that formation is now really a priority in the company, although it comes with small nasty surprises.

Like today’s. We were told a month or so ago that there would be an exam about PHP5 and MySQL Soon(tm). And that “Soon(tm)” was actually this morning. We have a meeting scheduled, and when we get there, bam! “Hi guys, enjoy the exam, k?”. Would have been a great moment to make us a pic, I bet.

Oh well, I never liked surprise exams, but the purpose of this one was more like an autoevaluation, so it wasn’t that bad. I got to the conclusion that I should reread the theory and the documentation of PHP again, because even though I knew what some of the questions were refering to, I couldn’t find the words to describe them. And yes, much to my dismay there were a few things I couldn’t answer because I didn’t know or had completely forgotten… So I hope I have some time to study, I surely can use it.

On a less self-depressing note, tomorrow the English classes start again at work! I love to have this small break. On hard work days it’s so relaxing to go there and have fun while polishing my English skills… Tiny things like this make this job worthwhile in the worst moments 🙂

Categories

June 2023
M T W T F S S
 1234
567891011
12131415161718
19202122232425
2627282930