Posts about nerdness (old posts, page 1)

2010-02-03 12:31

Apple's iPad is a sad, sad thing.

What the Ipad means

Everything I will say here was probably better said by Mark Pilgrim but what the heck, let's give it a shot.

Here's what's wrong with the iPad: it sucks for me.

Before anyone says "don't buy it then!" I'll say it first: I don't intend to buy one.

I think there is a place for iPads and it would go agains most of my beliefs to say it shouldn't exist, but I also expect it to make our world poorer, if it's popular enough.

Yes it's hostile to tinkering. Yes, to read about that, see Mark Pilgrim's article, he's a much better writer than I.

I once posted the README file for a piece of software called Atlast. It said things like "make everything programmable" and "[It is] far better to invest the effort up front to create a product flexible enough to be adapted at will, by its users, to their immediate needs."

The iPad and most other Apple products are the antithesis of that. They are products meant to be exactly as they are, and that's all they are goint to be. If you want to change the way it acts, you need to pay and be subject of Apple's whim, or "break into" your own device.

That hurts me. I see people give up even the possibility of changing what a (let's say it) pretty, useful, powerful device is capable of, just because they don't what that freedom. I can understand that from, say, a used car salesman, or whatever, someone without any inclination for that craft.

But I see freaking programmers buying apple kit. And I see them happy with their iPhones and iPods and (soon, surely) iPads, buying apps from the only source enabled to sell them, buying the apps that are allowed by a single party, that decides, hey, this app? you won't need it!

I see them and I say to myself, dude, that thing you hold in your hand is more powerful than anything we had 10 years ago, there must be something cool you could do with it that noone else is doing.

What's the vision a programmer has of his future if he endorses Apple's closed kit? A future where he can program something only if Apple approves? A future where a "real" computer is a SDK for the things "real people" use in their everyday lifes?

What is wrong with you? What happened to you? Are you now the kind of guy that's just happy with what he's given? Are you now a freaking utilitarian? Are you old now?

Have you noticed the trend in Apple's new products is towards less control by the user? First it was just handhelds, now there's a tablet. What was the last new interesting Apple product that wasn't locked up?

Here they had a device which could have OSX or Iphone OS, and they went with Iphone OS. There is a reason for that: it makes them more money.

For OSX, they make money of the hardware, the OS upgrades, and some apps. On the iPad, they make money every time you buy any app, every time you buy a book to read in it, every time you use 3G with the prepaid plan, and I am sure they are going to find other ways too.

And what's the key to making money that way? Control. If they had no exclusive control of the App store, they lose a source of revenue. If they allowed for easy development of hobby apps, they would lose revenue. If they could let you replace the freaking battery, they would lose revenue.

And if there's one thing companies hate is losing revenue. Apple saw two paths ahead, one leading to huge money, the other to just big money. They have taken the huge money path, and it's working for them. They are not going back.

If everyone goes along for the ride, it will be a sad thing.

2009-12-22 09:38

What I do for a living

So, what do you do for a living?

—Hardest question ever

Whenever I am speaking with people who don't know me [1] that's the question I dread.

If someone asks my wife what she does, all she has to do is say "I'm a lawyer". If someone asks my mother, she'd say "I am a retired teacher". Everyone understands what a lawyer does, or what a retired teacher did.

If someone asks me... oh, boy, that's hard. I usually weasel out by saying "I work with computers" but that has several problems:

  • They assume I repair PCs
  • They start telling me how their windows box was slow until they installed some kropotkina which supergarbled their frobnozzles [4], then ask me my opinion on frobnozzle garbling. For or against?

It's really hard to explain that yes, I work with computers every day, but I almost never open one (in fact, I have a policy of not touching my customers computers), and I have no idea what a frobnozzle is.

I have tried saying "I work on server side things, like mail servers and such. I install them, support them and also consulting work, explaining companies what the best ways to improve their services are.".

That one usually gets glassy eyes and a general "what?" look.

I could lie and say I program for a living, but that's not true. While I program a lot, it's usually not for money, and what little I do for money is just using programming as a sysadmin tool.

I could say "I'm a sysadmin" but most people have no idea what that is. It does tend to end conversations, though, so it has one thing going for it.

Nowadays I could say "I have a company", which is true (we are awesome, you should hire us to do whatever it is we do, more details at http://www.netmanagers.com.ar )

So, I usually manage to work around this question, but I have a problem: I'm not telling the truth, or if I am, I am not telling the truth in spirit because I am not conveying what my work is, but only what I do.

So, this post is about trying to explain what the hell I do for a living, in another way, which is more ... internally true, so to speak. This is really hard to do, so I am trying to just let the writing flow, maybe you can understand what I do even if it's not clearly explained.

I work with computers. I make them do what I want them to do. Whenever a regular user sits before his keyboard, he tries to make his computer follow his orders, which variable rates of success. I always succeed.

Sometimes, I am logged into a computer that manages data for thousands of people. They all are on my care. No, it's not their lives at stake, but a little part of their fun, or work is under my care. I help them. I care about them, and I want their fun, their work to be smooth and pleasant.

Often the computer will not do what they need. I will try with my craft to make it happen. I will write little programs, search for others on the Internet, carefully piece together a puzzle and make their needs be fulfilled.

I will write or install and configure those programs and do it well, because I am skilled, I have literally decades of training and experience, but I will mostly do it because I like order and function. I like when things flow unimpeded, I like when serendipitous accidents make things just click together.

I do those things for a living, yes, because I need to make a living. And later, when I'm off the clock and my boy is asleep and I have my own time, you know what I do? I do the same things because they are fun. And I will bother writing a 1300 word post about how I migrated my blog's comments from one site to another because it was fun.

Yes, I know, to most people that would not be fun at all, it would be a boring job, and they would hate doing it. And that's one of the many reasons I am a lucky man [5]: I have fun doing unusual things. That's really lucky, because if my idea of fun was watching "Gossip Girl" I would never have found anyone to pay me to do that!

But going back to what I do for a living, I create things. I don't create large, impressive things, I am not a bridge builder, an architect, I create small, useful things and try to do it with a certain taste or elegance. I am more like a silversmith doing cutlery. Sure, I'll try to make it nice to look at, but it must cut a chunk of beef first.

Yes, I work with computers, but how does that convey what I feel when after a solid day of work I can see that what was a lot of stupid computers and cables are now a working machine that can make 50000 phone calls a day?

How can I make anyone see the beauty in 3 hard lines of code that do nothing but print a bunch of numbers?

How can someone who makes a living any other way understand that I think things and they become real? No, not real as in a puff of smoke and there they are, but they become real through work and effort and thinking and cursing, which is what makes them really real.

I know most of this will sound like mysticism, but it's not, it's my honest truth, I really feel all these things as I work, all these things are my work. Sometimes when I crack a hard problem I want to fucking sing [7] that's how awesome it feels.

So, that's what I do for a living. I work with computers.

[1] Given my shyness problem, that's not too often [2]
[2] To those who only know me from public speaking [3]: I am painfully shy.
[3] Yes, it's perfectly possible to be a decent public speaker and be shy.
[4] At least that's how windows users sound to me half the time
[5] The others are of course y wife and boy, and if they ever read this: kisses for both. [6]
[6] He's just 2.9 years old but you know, the Internet keeps things forever.
[7] If you know my voice, you know why I don't. My own son says "no, don't sing, daddy", except for his good night song, which is the only one he lets me sing. Oh, and sorry for the cursing, but no other word fits.

2009-12-16 17:12

New 24-hour app coming (not so) soon: foley

First a short explanation:

24-hour apps are small, self-contained projects where I intend to create a decent, useful application in 24 hours. The concept is that:

  1. I will think about this app a lot for a while
  2. I will design it in my head or in written notes
  3. I will code, from scratch, for 24 hours.
  4. That's not one day, really, but 24 hours of work. I can't work 24 hours straight anymore.

The last time around this didn't quite work as I intended, but it was fun and educational (for me at least ;-) and the resulting app is really not bad!

So, what's foley going to be? A note-taking app aimed at students and conference public.

In your last geeky conference, did you notice everyone is using a computer?

And what are they taking notes on? Vi? Kwrite? OpenOffice? Whatever it is they use, it's not meant to be used for this purpose.

So, what will foley do different? I don't quite know yet, but I have some ideas:

  1. A strong timeline orientation. Every paragraph will be dated.
  2. Twitter/Identica support. Want to liveblog your notes? Just click.
  3. Multimedia incorporated in the timeline.
    • Webcam/Audio recording synced to your notes?
    • Images imported and added in the timeline?
    • Attach files to the timeline? (Useful for slides?)
  4. If provided with a PDF of slides, attach each slide to the right moment in the timeline
  5. Easy web publishing: find a way to put this on a webpage easy and quick (single-click publishing is the goal)

I have only thought about this for about 10 minutes, but I see potential here.

The bad news is... I have a ton of paying work to do. So this will probably only happen in January. However, I wanted to post it so I can take input while in this planning phase.

So, any ideas?

2009-11-24 13:08

My first public python code works!

No, this is not a post announcing I just wrote my first public python code. This is a post about my first public python code... from 1996!

In 1996, the soon-to-be-here year of the Linux desktop was fueled by one of the marquee open source applications of the time: LyX.

LyX was (is) a sort of word processor where you wrote and generated LaTeX which then produced whatever you used to print. But I am digressing: LyX was cool because it used one of the first good free graphical toolkits: XForms.

Ok, it was not really free, because you couldn't distribute patches.

And it was not all that good either, but we were comparing it with Motif, so it was much more free and much better than that monstrosity.

BTW: The latest release of XForms is from august of 2009.

At the time, a 25-year-old me was in love with Python 1.3. Here's how I described it:

Python 1.3
It's a beautiful ,free, language. Get it from ftp://ftp.python.org http://www.python.org

Yes, Python 1.3. So, I wanted to use this C GUI toolkit used in this cool app, and this neat language I was learning and use them at the same time.

I ran (not walked) to my faithful Slackware 3.0 ELF in my 486DX2 PC and started hacking. In a weekend or so I had a working binding.

I even started writing the holy grail of desktop applications, a GUI version of Pine, using python and its IMAP module (python mailer, or PyM):

//ralsina.me/static/im1.jpg
//ralsina.me/static/im2.jpg

I released version 0.1 alpha in 1996, May 13 ... and a few months later Matthias Ettrich started KDE and I found Qt and never thought about XForms again.

Until this month.

For reasons that don't matter, I mentioned PyM in the PyAr mailing list the other day, and ... well, would pyxforms still work?

Why, pretty much, yeah!

I got the pyxforms-0.1-alpha sources from somewhere in the internet, installed XForms 1.0.92sp2 (yes, the latest release, from three months ago), of course I already had python 2.6.4 installed, added a setup.py, edited 10 lines of code and...

im1

Yes, it works. You can get this 0.2 version (codename "Cthulhu was here") here just 13 years after 0.1.

No, I don't understand the weird rounded corners, or why the cursor looks weird and old when it's inside the window.

It's a REALLY small and fast toolkit, though.

Honestly, is it useful for ayone? Almost certainly not. Am I amazed something I wrote in 1996 still works? Oh, yeah I am.

2009-11-17 21:45

I'll be speaking in Mar Del Plata

I will be doing a brand-new never seen introduction to PyQt programming at the "Jornadas de Software Libre y Open Source" in Mar del Plata tomorrow or the next day.

More info at http://softwarelibre.mdp.utn.edu.ar/

If you mention this blog and ask nicely, you get a can of cheap national beer tomorrow night (limit: 2 cans ;-)

2009-11-11 15:12

Advertising to the math-deficient

As a former future mathematician, it drives me mad when I see an ad that looks like a great opportunity... as long as you don't crunch the numbers.

Not that they are hard to crunch at all, in fact they are pretty much pre-crunched, but consider this one:

Frávega, a large electronics/appliances store is advertising that in november, for one day, EVERYTHING WILL BE FREE.

That's right, for one day in november, they will not charge one cent for anything. Everything has a price tag of $0.

Of course we don't know what day that is. It will be decided randomly after the month ends.

And... ok, and you don't get the money back, you get a voucher for the same amount, and you can use it in Frávega.

So, while this may look like a big promotion, it's actually doubtful Frávega will spend any money whatsoever in it, except the money spent printing the banners.

How much does this cost?

Assuming a random day, and that this campaign brings no new sales whatsoever, it's 1/30th of the monthly sales.

Also, they are not giving you money, they are giving you store credit. Since you can only spend it at Frávega, in reality will be getting a "2x1" deal. You spent in november, got the second one for "free" in december.

So, what is really happening is that 30 people spent, say, $1000 each in an oven, and Frávega has to give them 31 ovens.

That would mean this is the equivalent of a 3.33% discount.

What? A 3.33% discount doesn't sound so appealing? Of course not! They are taking advantage of maths not being intuitive.

So, always keep it in mind: whenever you see numbers in advertising, they are there to convince you to buy. More often than not, it will not be as good a deal as it seems. This is an extraordinary case in that "one day everything for free!" actually means "a 3.33% discount in average for a month!".

BTW: the cost for frávega if you win is more probably less than $600 for a $1000 oven:

Frávega buys two ovens (let's be generous and say they paid $1800 for them?) and gets $1000.

But the $800 deficit goes against earnings tax, which is 35% so $280 come back.

And if they bought the ovens for $900 each, that means $314 are VAT, and since they are selling you two ovens for $1000, there's a VAT refund of $140.

So, those $1000 actually are only $580 after taxes.

This part about taxes can be terribly wrong, though ;-)

2009-11-06 12:00

Myckey Mouse explains the Large Hadron Collider problems

You may have heard about the possibility that the Large Hadron Collider is being sabotaged from the future.

That may sound preposterous, but it really is quite reasonable, once you think about it a little.

Let's start with the obvious:

Suppose you travel back in time and kill your grandfather. Then you wouldn't exist. And you couldn't travel back in time. And that's a paradox.

Then there is the anti-paradox:

Suppose you can't travel back in time. Because you didn't save him, your grandfather died. Ergo you don't exist.

That's not a paradox, but suppose time travel is possible: that means you can go back in time, save your grandfather, and thus make your own existence possible, ergo allowing you to save him.

As soon as you allow for time traveling to be possible, the solution for paradoxes is obvious: you can´t change change the past because the future won't let you. The future "faction" that tries to preserve the past will always win, because the past is fixed.

So, if you travel back in time and try to kill your grandfather by shooting him in the head, another person from the future will appear behind you and disarm you. Or appear behind you and kill you as soon as you had the idea to travel in time in the first place.

Or your kid will drop a coke bottle on your time machine just before you used it to kill his great-gramps.

The exact mechanism used to prevent you from becoming a paradox is unknown to you because you need to go further "forward" to know it.

Now, back to the LHC: if in the future there is knowledge about time travel, and there is knowledge about how the LHC may destroy the world[1]_ then maybe some time tourist decided to see how humanity dressed in the pre-ice-age era, comes to 2009 and while eating a sandwich, somehow spooks a bird which then drops a piece of bread in the machinery.

Which of course, brings me to the best time-travel show on TV: "Mickey Mouse Clubhouse".

If you don't have an under-4 kid, grandson or nephew, you probably don't know it, but let me give you a summary of each darn episode.

  1. Something "bad" happens (Goofy has a cold)
  2. A solution is proposed (Give Goofy some Minniestrone soup)
  3. A flying ideogram of a mouse called Toodles shows a collection of tools:
    • Giant candy cane
    • Roller skates
    • Picnic basket
    • Seesaw
  4. Something else "bad" happens (Pete wants the soup)
  5. The tools are exactly what's needed to solve the problems presented to accomplish the proposed solution (You can use the seesaw to move giant rocks blocking your path).

This is obviously a case of the future preventing something from happening. How else would Toodles know what tools to choose before they are needed? There was no way to guess that a giant rock would block the ravine through which Mickey and Minnie would try to escape from Pete! [2]

So, whenever you need to think about paradox prevention, remember Mickey and his friends and just call Toodles.

[1] No, I don't think the LHC would destroy the world.
[2] Also, that part shows a complete ignorance of how leverage works.

2009-03-16 20:40

Grrr... I want one of these. I just need a reason.

I just saw this post about the SheevaPlug. I need one. First I need a reason to need it.

  • Backup server? Add a USB disk enclosure, put everything in a metal box, install bacula and-or rdiff-backup?
  • Same hardware, Home MPD server?
  • Idem, home SAN?
  • Portable demo server? I could install some solutions on SD cards and show them for clients with this and my netbook.

Suggestions accepted...

2009-03-12 21:08

My kid and xkcd

xkcd 0xFF:

http://imgs.xkcd.com/comics/subjectivity.png

See this strip at xkcd, the gretest comic... ever!

Real life (he is not even 2 years old yet):

I need to find a really tall one in the next 4 years.

Contents © 2000-2019 Roberto Alsina