Saturday, December 11, 2010

Talks like a programmer!

Geek! Nerd! Dork! Computer weeny! - I've been call them all. The last one was actually afraid I'd file a harassment complaint for the weeny part- but I'm bigger than that. I was just happy she noticed that I had one! Today's topics are Python and Sqlite, yes, I'm actually going to get real nerdy here!

First of all, I really don't believe in files anymore. Text files are alright, because they are the backbone of everything tech! XML: is a great way to pad your resume', as we joke! Tab Delimited Files are great, but not at all readable by humans. See, tabs are useless formatting, so they double as control devices for Next/Prior field in almost EVERYTHING! Type in some lines, separate them with tabs instead of Returns. Highlight, and copy them to the clipboard, now open a Spreadsheet, and Paste! See, what I mean? Go ahead, try it! Comma's do not automatically work this way. It's not just spreadsheets, you can do this with nearly any screen form from on any program (unless they suspend the clipboard).

My lost point here, was that I no longer believe in formatted data files, generated by programs. So what do I think should replace DOS, and the binary data file? SQL of coarse! Most all data is a table of information, so why not use ROW control with Fetches that never overflow your heap space? (x3 nerd points for mentioning the HEAP). Point is, that once data is captured or created, 99% of the time, it will want to be shared as well, so why not just start your application design with a little relational database design, and forget opening files and dumping data in, structure by structure.

The BEST TOOLs in the universe for this was MS Access, and Visual Basic. Until Microsoft lost it's mind and started justifying their degrees by adopting .NET, which ended intelligent programming as we knew it! And turned to hostile mean spirited users licensing, that nobody can understand. So now where do we turn? Well, most of us knew that Microsoft Servers are expensive CRAP, so we left for greener grass of FREE Open Source; Linux and BSD. Which meant the new power tools where PHP and MySQL. Then the Chinese and Russians started hacking everybody, so we needed a new LOCALIZED alternative; Ah, ah, Ah, ah, AH! Enter Sqlite! I understand that it's now included in the BASIC Python packages- but don't hold me to that, I think I had to make Ubuntu add those libraries one by one.

Now, I admit, while I've had Linux programming books piled up here for a decade, Ruby and Python really haven't grabbed my libido much. I like the simple; C and C++ with none of that extra What the F*** MFC or JAVA kind of overhead. I think it's harder to learn how to put your program inside of someone else's template, when you don't know why the template is the way it is? I call it justifying their degrees! If it takes me two years to learn this stuff, then that's two lost years, which needs to be calculated into the EXACTLY ONE project I'll ever use it on- and as a freelancer, I can't justify that. Which is exactly HOW I feel screwed by Microsoft! They stole my life with long learning curves, then stole my bone right out of my mouth, while exporting all my work. So, learning something new like Ruby or Python has not been on the top of my stack of pleasures for the last decade.

Both Ruby and Python, just seem too chic! Too CUTE, Too CLEAVER! Which instantly causes panic button to go down. While I have a friend that swears by Ruby on Rails, he also loved Pascal over C. (Told you this is a super nerd article, by someone in the biz for 30 years.) I'm not sold. I have better things to do with my time... Then we found out that Blender (3d) is written in Python, and another friend then started to play with it. Still, I've been resistant, not really willing to learn it, I can kick out everything I need in PHP in a second, why learn another?

Why learn another? Why, oh why? Because of hackers! Air GAP is the greatest security. But I still need most or all of my data in one place! Sqlite packs all the tables and indexes into one portable file- no server software needed. Finally a portable data port! Why Python at this point then? It where most of the tutorials are! Python is multi-platform, even to smart phones. Python is ready to use the GTK, which as well is Multi-platform! And Python is including support for Sqlite3, in the 2.6.x packages. It's like it all goes, everywhere you want to go! Besides having built in support for almost all networking exchange protocols (like FTP/HTTP/HXML/SMP...). It really is a utility knife, a chic one with Complex Numbers most of us will never use!

So, I byte off a huge chunk of gui to chew on! Sqlite, GTK, and Python. You know, I remember struggling so hard with the Windows API, which is almost humorous to this. But I've been around the block so many times, the GTK seems simple and ordinary. Sqlite seems simple and ordinary. The monster is Python learning curve. While it wants to be simple and readable they then turn around and do something like this:
>>> li = [elem*2 for elem in li]
I would like to know in what human language that is readable, without understanding Python? And that's just one example of Python not being quite as readable as what they promise it to be. It's just another Politician's Promise, and just as dependable. Like FORTRAN it can get way too cute with loop processing in an assignment or statement.

Anyway, that's what I'm chewing on these days. I'm now over my horror and culture shock to all this damn English humor, and contrite Mr Cheeky style; If you know what I mean? Know what I mean? I don't really want to relive my favorite TV moments unless there's some boobies involved! I just want to learn yet another language, for Christ's sake, as quickly as I can. So maybe, just maybe, I'll share my notes with you. (It helps me learn it faster.)

No comments:

Post a Comment