Tuesday, November 1, 2011

A few thoughts on Polaris Office

Although it's not a feature I was particularlly interested in, so much as the whole dock+battery life thing, I must admit, the Polaris Office suite that ASUS bundled with the Transformers does add value. Most phones come pre loaded with a lot of crapware, and rarely do I actually use any of the crap pre-loaded on my phone, or Andrea. Generally, I don't need office suites. I used to use word processors excessively so I focus on those tasks. For years now: my word processing tasks get done in Vi IMproved and converted into a format for publishing; such as HTML for web or PDF for general reading. If I wanted someone else to edit the stuff, I would not send an MSWord file either. Read only data should not be sent as a writable .doc[x] file. I don't do Power PoinT presentations. What stuff most people do with a spreadsheet, I generally do with Python or Perl; a more natural interface for my brain. In fact, there are only about two times that I really use office suites. If I need to share editing tasks with a bunch of people that are probably technically illiterate or just have better things to do than pick up a suitable format; I use Google Docs. For work, I use LibreOffice. That covers both reading whatever files might pop in from other departments but in eningeering we all pretty much rely on plain or marked up text; it's really mutt/lynx friendly you could say. Something that caught my eye was a comparason of Android office suites over at XDA, Polaris was clearly a solid product. In my own tests, all I can say is that most Android apps for dealing with rich text formats seriously suck. Examples include Google Docs, Blogger, and Evernote; the last is probably the best unless you feel comfortable dealing in HTML for more stuff. Polaris Office is a really is the only Android app that I've seen, that really feels like a "Word processor" and so on. Today however, I noticed that the spreadsheet activity may be useful to me. At work, we have time sheets in Excel template format; I have both an Excel (.xls) and Open Document (.ods) files to use as a template; normally I fill it out using LibreOffice and the .ods version, and print it off my work station. I tried opening both files with Polaris Office today, and noticed while it doesn't understand Open Document formats, viewind and editing the Excel file works perfectly. Rather than screw with Android+Linux+Cloud Print, I just did stuff off my workstation. Why this surprised me is that Google Docs rather fails at doing the same, for both formats. So the question I would have to ask, is how well does Polaris Office do in generating files that work with other office suites (E.g. Microsoft's), and ditto for interfacing with Google Docs in both directions. Either way, it looks like the ASUS Transformer is as fully functional as my work station and home PC, but sans binary compatbility (x86, x86_64 != ARMv7) and Direct3D. Someday I can't help but wonder if we will have Android PC's powerful enough to run Windows in a Virtual Machine for legacy applications.

My ASUS Transformer's charger was not working

Well, getting to work was not so fun this morning. I usually use my ASUS Transformer for _a_lot_ at work. When I got in to work today, I had 40% on the tablet and a drained dock. Monday I had come with a 78%/97% charge on my tablet/dock and left with a tablet charge remaining in the 70s. Andera has good battery life so I wasn't worried, especially since my office has plenty of juice to go around.

Well, today I plug in and imagine my surprise when the frakking thing refuses to charge! Nothing, nadda! I tried hooking it up to my work stations USB 2.0 port, and Andera notified that USB debugging and ASUS Sync crap was working, so obviously +/- the right USB 3.0 pins, the cable ought to be fine. None of the electrical sockets worked.

About ready to try the freezer trick and annoyed for the first chunk of my work day, I yanked the adapter out on my way to lunch, and noticed something irksome. The base of my adapter wasn't set quite right, maybe 3 to 5 milimetres off. Snapped it back into place, plugged it back in, and dang nabbit, the son of a biscuit eater started to charge.

Sure enough, I dislodged the plug end of the adapter and snapped it back again, no problem. You just push (really hard) down on the segment where indicated, and poll it up; I used my desk for help. Simple, and fully an issue of internationalization. Somehow the bloody thing had gotten dislodged.


That's what I get, for countries not being able to decide on a single electrical socket >_<.

Monday, October 31, 2011

Today has been a bit of a day. My aging parakeet has passed on; I say aging going by what's on Wikipedia. Plus some good news at work, that I'll nit relate here. Otherwise it's been fairly uneventful. Pretty much been experimenting with Google Music and playing Killing Floor over the Halloweeen special event; one Scrake to go before I can join Ranzaar's chubby Chicken Army lol.

Think I'll probably get around to journalling other thoughts later: Night of The Living Dead is starting!

Laziness meets frequency

Soething that I have been thinking about, or princiaplly that I've been to lazy to transfer over googlecl stuff from Alice to Andrea, and for how much my notes management stuff has grown. I'm thinking that my journal entries will likely start to collect into my "Scratch Notes" file, and eventually pushed off into here. Pretty much, my notes system has to solve various problems.
  • Good support for recording structured information.
  • History management; what changed and when.
  • Simple and readily accessible enough to collect/manage unstructured and "In-progress" information.
The first two are what most systems fail at, doing the latter, hell you can do with a collection of Post It! Notes if you know how not to spill your drink. Having a vim session running in dtach, that I can share e.g. between multiple tmux/screen sessions, helps. But it's really my "Scratch Notes" file that makes it easy. It's a structured dumping bin for the here and now: what I'm doing or what I want to note. Things either get aged off; "Eh, ain't parsed that in a month, bye, bye!"; or being transitioned to a suitable file. For example, while working on X, I may make notes applicable to Y and Z; afterwards I rip them out at leasire and incorperate them into suitable notes. I attribute the concept of a "Scratch" note to Emacs. It has a *scratch* buffer open initially, where you can collect snippets of text you don't want to save, and can readily evaluate elisp code; very fundimental for emacs users. Me, well, I kind of like the same idea, but in a more perm' note.

TF101 Coolness

My tablets dock has been sitting unused since I got home from work on Friday, docking it at the office I have 97% charge on the dock; and it was probably 98% when I hit the road on Friday.

Saturday, October 29, 2011

Thoughts on "Why Devs hate PC Gamers"

Was reading this article today and it basically laments that game developers gate PC gamers because of the piracy. While I can't agree with most of the remarks about DRM, even less so being a programmer. I've written a bit in the past about how I feel about DRM.

What I do generally agree with though, is this persons views on pirates. I don't pirate crap. I don't even mind paying for crap if it's worth having. Most games I can't say are worth the release price, so I don't buy them. Personally, the only distinction that I see between console and PC for piracy is that it is harder for the technically innept masses to steal. As the tech-line blurs and development becomes a bit more related, that's going to change. Just look at the current generation of consoles versus say, the original Nintendo.

Friday, October 28, 2011

It's funny how not wanting to trade time with somone very important to me, for carting my mother around Kroger's seems fit to alll but paint me as a fusion of Benedict Arnold and Adolf Hitler. Don't you just love mothers?

Thursday, October 27, 2011

Trying to at long last keep up with my RSS feed reading was going well, until I took half a week off checking greader lol

Is RSS dying?

RSS Rant

I must agree with most of what the author wrote, and confese I prefer RSS - and would like something comparable that offers commenting. But the security implications of that are probably nightmare'ish to say the least.

Wednesday, October 26, 2011

Changes coming

At some point, greater integration between spidey01.com / blog.spidey01.com and a number of other stuff should be coming. One that is already apparent or should be, is my entries here now carry my name rather than my call sign. That's part of the Google+ Profie integration that has hit Blogger in Draft. I could easily change it back now that real names needen't be used on G+ (which has always been against Facebooks policies AFAIK), but for sharing the same display name across Google Mail, Talk, Plus, and Blogger, it's worth it to me to use my name.

Spidey01 is my call sign of choice, and very much a piece of who I am. It's something I'm comfortable with, associating my Digital Presence with my Physical Presence as it were. My blogs side bar has always carried Spidey01 / TerryP on it, and unravelling the rest non-trivial for the initiated or the persistent; thus no fear.

Pretaining to this blog itself, I'd rather like to experiment with a darker and more computeresque theme, the teasing page at my site probably should clue one in on what sort of look I'm interested in. It will probably wait for a stretch of free time though, where I can tweak things to taste. General restructuring and house keeping also needs doing. Content wise, there's a number of things I'm interested in presuing. I have been doing a lot with the conversion to using Android as my main computer, both for personal tasks I do every day and for programming. Since I've been exploring the market a lot more, there's apps I would like to note here before they swap out of storage someday. More or less the same for a few programming ideas of my own, hehe. There is a chunk of "Posts of Note" that will eventually be moved out of my personal notes and become a page here or at the main domain.

Google+ arguably fits my life better than any other resource for such stuff like this, in terms of connecting with my friends. Facebook and Twitter users, you are just left out in the cold, sorry; the most you get is an alternative to my RSS feed here. Where as Google+ is better for sharing with friends and stuff that peers would probably tweet, I find Blogger more comfortable for organizing content, and finding it again. Stuff that goes on G+ is more aimed at sharing, stuff here is more Me oriented. That's why I tend to call it a "Journal" and only use "Blog" for consumption by others. Stuff kept in my journal is principally for me, and offered for where it may be useful. I will be rather happy someday if there is an integration between Blogger and G+ that would use the same permissions and commenting engine (while retaining the existing login options for non G+ users) but really don't expect it to ever happen. In the  mean time, I just hope that the Google+ API expands and that it will eventually become like Twitter in that regard.

Or in short: G+ -> for the water cooler; Blogger -> for the journal.

Tuesday, October 25, 2011

In the future, journal entries should now be syndicated via RSS, Facebook, and Twitter. Commentators using Facebook rather than Blogger, will be LARTed. 






When Google+ integrates better with Blogger, we'll see what happens, hehe. It is rapidly becoming my preferred media but Blogger is better suited for longer stuff. Give us more API Googlers, more API!

Understanding Twitter

Newsgroups, forums, blogging, Facebook, Google+, etc are all things that I understand fairly well. Twitter less so for me, as it's not a service that I 'use'. Some people I know use Twitter but mostly it's just businesses and marketing, and I don't care about any of the businesses I like that much to listen; so I've little use for the service.

Viewing someone's tweets reads off like a list of short messages, similar to the blog model (e.g. like a Wall post on Facebook) which almost everyone understands these days. But it includes the users comments inline, along with their comments (replies) on other peoples posts (tweets). In a way, it is coser to the newgroup/forum model where in you have a node that fits into a 'thread', yet the head of the thread is just a normal post (node). In the blogging model, it's somewhat different because of the emphasis on the blog comment.

This makes it rather disconcerting to look at tweets for the initiated. From first glance, it's like listening to a twittering bird that not only talks to the open air (hello you Facebook mob!) but also to its imaginary friends. By clicking the tweet (look for the icon top right) you can see the thread and explore the relationship between tweets. It's a decentralized version of how forums work; instead of defaulting to viewing by topical thread, your default view is by the user.

If that last paragraph makes sense, particularlly the last sentence: you now understand Twitter. Or I'm missing something lol.

What remains to be seen until the course of history has advanced much further, is whether or not any given model (newsgroup, blog, twitter) will become the universally accepted model of communication on the internet. Twitter is a leg up over using a mail client that doesn't do threads (eww) but I personally prefer the newsgroup model, but profese, twitter is an interesting data model for machine processing to whatever corporations will do to profit from that data model.


Definitions:
Newsgroup model
Someone starts a topic, other people reply; replies and topic starts are all the same thing (posts) but things are usually collated into "Threads". Examples include USENET, mailing lists, and forums.
Blog model
Someone blogs an article, other people comment; comments are distinct from the content and may be deemphasized depending on the platform. Examples include Blogging and Facebook.
Twitter model
Someone tweets a short message, other people may publically or privately reply . All nodes are equal and connected as in a shared thread, but are collated by "Users" rather than threads.

Sunday, October 23, 2011

Right, premake4 is one of my favourite ways to build C/C++ stuff but tonight I'm thinking it has a moron involved. You can specify a project as being one of four kinds: ConsoleApp, WindowedApp, SharedLib, StaticLib. The documentation here states that this likely means /SUBSYSTEM:WINDOWS will be passed to link.exe, and indeed it is. That is how you say call WinMain and do any other I'm a GUI app magic for Windows; other wise you get a main and a command  prompt; simply put.

This FAQ entry on the other hand, is just retarded.

Monday, October 17, 2011

iPhone 4S vs. Samsung Galaxy S II Drop Test




The Samsung makes me glad that my ASUS Transformer uses Gorilla Glass like the Galaxy S II phone, not whatever crud is used on the iPhone 4S.


Did I ever mention that I wouldn't have bought an iPad, even if it had Gorilla glass?

Today while I was pacing the lunch room, waiting on my lunch to finish microwaving. I came to a bit of a conclusion; concepts such as deductive reasoning and mathematical induction generally apply.

Over the span of my life thus far, my mother has been opposed to every "Good thing" in my life. Except one: getting into church. That one good thing only happened because she was presuing her own interests, I just got dragged along for the ride. Like wise, by the flipside of that coin, pro to just about everything that has had reaching negative impact on my life.

That gives me two thoughts about life at present: A.) I'm probably on the right track (Thanks mom) and B.) at least my mother is consistent.

Maybe I can never expect my mother to ever be aligned with 'good' for me so much as what she wants (and assumes therefore must be best). But at least I can generally count on my mother being consistent, easily anticipated, and generally annoying. Most of her present behaviours, I calculated the probability of when I was what, like 8? LOL! I like consistency and determinism. It aligns with my concept of 'order' in the universe instead of pure randomness.

That being said, I think I would actually worry if my mother didn't approuch any good thing in my life, as if it was a radioactive time bomb about to obliterate the known universe. Even more so knowing my mother.

Sunday, October 16, 2011

Today, my mother wanted to know how much cash she could borrow next week. Having just paid off a stack of stuff, she'd have to wait until my next pay cheque or take it against my credit card.

I had decided to "Fire" her from the grocery shopping, i.e. rather than giving her a budget to shop with ($500/month), I'd do it myself—because she proves in capable of sticking to that. I tried paying the rent (over $700) and she racked up debt against my pocket money for vacation. Hasn't paid back a dime. To try and be *nice*, I opted for a unique option....swap groceries for bills. Which I've paid off ^^.

The concept there, being yet again, if I'm doing that, she isn't entitled to more...my most recent Google+ entry shows how much debt she's already in. Prior to taking on bills  in exchange for not firing her. I wanted an formal (and witnessed) agreement that she's not allowed to borrow any more $$$, and the bills in  my name; but I never got around to that first detail.

This time, I'm requiring it + a pay in full clause as a perquisite to loaning her any more money.

Saturday, October 15, 2011

The Other Guys

Just finished watching a movie called The Other Guys, and I must say: while I thought it was rather retarded at first, by the end game I was thoroughly enjoying the film.

So you have two bozo's, a "Forensic Accountant" that acts like you'd expect him to be sucking a lolly and an angry failure. Give or take a bunch of people with "WTF STUPID" stamped on their forehead. By the end of it, you're convinced that you don't want to mess with a Prius and that a Chechen Dora The Explorer is a terrible idea; or how many times do you see a bunch of golfers take down a helichopter for detectives in trouble?! It's been a while since a movies made me cackle as loud as the ending, even if the beginning is a bit more obtuse.


On the other hand, it's an excellent little romp and definitions worth watching, if you have a sense of humour and can take the pace ;).

Friday, October 14, 2011

For Fails Sake!

I just noticed in Comcast's account page, appropriately they note the default address, username, and password to login to the web interface for setup of the particular wireless router in question. However...the scary thing is they encourage you to connect using the default SSID and the network key printed on the label (hopefully not also out of a can....), skipping any need to use the web interface what so ever.

Right, let me paint you a picture. Joe & Jane Luser, don't know squat about routers. Most people don't even if they know how to use computers well beyond average (but it's not that hard). The label says skip the rocket ma-science setup smetz up and just plug it in, connect to this network name and type in this password...you're done! The Lusers are probably so inept, they even put the label on the router just in case.

Now, let's say they have a neighbor help fix a computer problem someday and she notes the label. Sometime later they piss her off, so she connects from her apartment, logs in with the default, and locks the Lusers out. Or maybe does all sorts of nasty shit; winning!


It's probably a good thing that routers rarely default to allowing remote administration, so at least the SSID/Key are there...but that isn't good enough that I would want to bank on it. And trust me, if someone gets deep enough into your network, you can be banking on it.


Thursday, October 13, 2011

I guess like many, this morning I learned that the world recently lost one of it's biggest contributors. I do not mean Steve Jobs, a man with his own important legacy. Dennis MacAlistair Ritchie has died, he was more commonly known as 'DMR' or just 'Dennis Ritchie'. A G+ entry by Rob Pike is the earliest reporting I'm aware of, but I can't say I expect this sad news to be found on TV.

Dennis Ritchie has a place in history that few men have ever achieved, because his work helped change the world. I am a young man compared to the late DMR but I does have an interest in history. If it wasn't for this mans work, I doubt that I could be writing this journal entry, because he helped to enable so many elements that make it possible.

His most famous programming language, C, was so pervasively popular, that I knew of it before I learned to program. My first programming language (C++) was derived from it. A big part of how I fell so deep insane with computers was learning about how C and Unix became self hosting. That  means you could make C and Unix using C and Unix, in laymans terms. Back then that was  almost like revolutionary - today it's like sliced bread. We take it for granted but someone had to help show us the way; then people started to use it everywhere.


Through C, we gained countless programs. Most Unix operating systems are written in C, most other operating systems are written in C or finally grown from one that was. Unix, DOS, Windows, Linux, OSX, your iPod, your iPhone, your iPad, our Android. None of it would exist just like it does. Most of the stuff we do every day involves C programs, be that reading e-mail, playing games, surfing the web. It is even normal for other programming languages to be implemented in C. The defacto standard Perl, Python, and Ruby included. It is so normal that writing a language implementation in itself is not so big anymore. C is so pervasive that it is also inescapable in other languages: their is almost always a way and a need to interface with C code. Hell, today you might even have C code involved in your toaster. It is that important a programming language. If you ever used a computer or an embedded system, you have probably used software written in C, or are old enough to remember what it was like before punch cards.



C is perhaps the single most important language since programmer's stopped writing in raw machine code. In fact, sometime after that we stopped writing in assembly and I know no one who goes lower level than reading the machine code. A common portion of C syntax is practically our linga franca—even if C is not a shared language, the syntax (which grew from prior languages) is also widely used and an alternative to pure pseudo code.



Maybe a lot of young programmers don't know C, or skip it. I love it. It is one of the most beautiful languages that I know, despite it's trappings. Perhaps some of the greatest lessons I learned about my craft, was that learned from C. Perhaps another was the humility of it's creator.



Somehow, I doubt his other works will ever be as well known as C, or things he was a big part of (like Unix), but maybe people will study them and see what they can learn from the work of a legendary hacker, like Dennis Ritchie.

Monday, October 10, 2011

Thoughts of modal/semi-modal editing on Android

In regards to modal, I mean `like vi`, where in the keyboard is shifted between a normal "Command" mode for manipulating text and an "Insert" mode for typing text into the buffer. A prime example can be found by learning vi (or vim or elvis). Personally I think this kind of model fits well with a mobile device like Android, even more so than it does a PC—emacs pinky be damned ;). Which makes me think of something like this:
  • A simple "Notepad" grade editor
  • Press a designated command key, send following keystrokes to command dispatcher
  • Useful stuff: save/load, buffer list, etc.
  • Scripting/configuration language
Something uniquely respective of my vi/vim heritage, yet incorporating lessons from the emacsen school. As a former XEmacs user, I do know quite well that my beloved Vi IMproved is not always well subverted. Using the volume up/down keys (and settings to rebind ofc) would make perfect replacements for Control and Meta (Alt/Escape). Using a keyboard with suitable keys, obviously eliminates this: and for on screen work with a big enough display, I really have to reccomend The Hackers Keyboard. It is an interesting preposition, at least. For scripting language, that one is a stickly wickly one. Android is not well suited to this in the conventional sense. Unless you want to implement one in a suitable subset of Java (double barf). An interesting idea would be to compile something like Lua or a Scheme interp' to native code, and communicate with it using some type of local socket and RPC. That might be interesting to toy with. Then perhaps, "Plugin-lets" that add useful tools, such as busybox or git. That's less feasible but certainly interesting.

Another day closer to BattleTech, another Trillion away from Avatar

My post title sums up exactly what I think of this BBC article on how controlling stuff with thought is going. It really is getting impressive, if abit, unlikely that even our childrens grand children will see much more of it than we already have of cloning. The applications for gaming, may invoke memories of Marty McFly being told his old rails shooter was a "Babies toy" for needing the player to use their hands, or at least for people getting on in years a bit <_<. But in all seriousness, until such tech is literally prevasive as game controlers, it's not going to happen, except maybe for the super rich (JP anyone?). Expanding the capabilities of UAVs and other war machines are probably going to be the only thing to cause sufficent surge in funding for such tech to develop massively; which is sad, IMHO, when letting crippled people walk again is a much better cause. Even more so when given the cost, it's less justisifable of a Big Fraking Budget for research, then improving existing means of remote control. I have no doubt however, that the armies model for the Next Gen solider will likely incorporate that level of being "Plugged" in as well, in all due time. I seriously hope though, that a company called Cyberdyne with a suit named "Hal", is some Japanese geeks idea of good humour, and that Skynet is still brewing somewhere beneath Moutain View, Californa. For those not in the know, in the world of BattleTech, "Mech Warriors" have their physical controls augmented by training their 'mech to react to their brain waves; For those living under a rock, Avatar displays remote-mind-control over a syntehic body (so does Surrogate for those that don't do enough Sci-Fi), and Skynet is software that will eventually become self aware and take over the world when it sees how threatening we are to it's continued existence. Three Laws of Robotics, my hairy humanoid ass!

Friday, October 7, 2011

Notes on the ASUS Transformer's file system / partition layout

rootfs on / type rootfs (rw,relatime)

# physical
/dev/block/mmcblk0p1 on /system type ext4 (ro,relatime,barrier=1,data=ordered,noauto_da_alloc)
/dev/block/mmcblk0p7 on /data type ext4 (rw,relatime,barrier=1,data=ordered,noauto_da_alloc)
/dev/block/mmcblk0p2 on /cache type ext4 (rw,nosuid,nodev,noatime,barrier=1,data=ordered)
/dev/fuse on /mnt/sdcard type fuse (rw,nosuid,nodev,relatime,user_id=1023,group_id=1023,default_permissions,allow_other)

# special
tmpfs on /dev type tmpfs (rw,nosuid,relatime,mode=755)
devpts on /dev/pts type devpts (rw,relatime,mode=600)
proc on /proc type proc (rw,relatime)
sysfs on /sys type sysfs (rw,relatime)
debugfs on /sys/kernel/debug type debugfs (rw,relatime)
none on /acct type cgroup (rw,relatime,cpuacct)
tmpfs on /mnt/asec type tmpfs (rw,relatime,mode=755,gid=1000)
tmpfs on /mnt/obb type tmpfs (rw,relatime,mode=755,gid=1000)
none on /dev/cpuctl type cgroup (rw,relatime,cpu)
tmpfs on /Removable type tmpfs (rw,relatime,mode=755,gid=1000)
/dev, /dev/pts, /proc, and /sys are normal Linux stuff. I'm not familiar with /dev/cpuctl or /sys/kernel/debug but they are fairly self explanitory! Whatever /mnt/asec, /mnt/obb, and /acct and numerous other things are explained briefly in /init.rc; poking around /acct is interesting. The tempfs on /Removable pretty much just serves as a place to put mount points for external media, i.e. MicroSD / SD cards and USB drives. The mmcblk device is clearly responsible for the most important parts of the Android system: /data and /system are your air and water. Under /data, you will pretty much find all your apps (stored on internal memory), and in /system, well, stuff that helps make your system work; d'uh. /system and /data can probably be looked at as read-only and read-write portions of the Android File System Hierachy, I guess. As far as mmcblk itself is concerned, it's just the internal memory card. The thing that I find rather interesting, is that the user storage area (/mnt/sdcard -> /sdcard), or what everyone typically interacts with, is provided through some type of relationship to FUSE, as opposed to directly through mmcblk0. This is curious enough to me, that I would consider poking around further, or even digging closer into ROMs for the Transformer, to be worth the effort. Yeah, I've just got to figure out how crap works, lol. On the upside, I know better than to disassemble my new "Stable" system and I'm to cheap to get one just for testing puposes.

Thursday, October 6, 2011

com.google.process.gapps force close on my ASUS Transformer - solved

This isn't an issue I've encountered before but since last night, I've been getting these. Very regularly. Today, I noticed an association between this and using the web browser.  Sure enough if I went into Settings -> Accounts & Sync -> that Google account; and unchecked "Sync Browser", it stopped. Like wise if I toggled it back on, it would rapidly force close.

Being more scientific, I toggled sync on/off for some other Google services without getting any force closes. Problem therefore became, how to fix this?

Android apps generally store their data under /data/data/package-name; where typically /data/data is your internal memory and package-name is a Java dotted package name like com.android.browser; that's just how it is I'm afraid. Inside, I noticed nothing very interesting. Mostly an XML file related to settings and some databases. This is a Good Thing (tm) except Fuck Your Life if you want more stuff on your memory card; unless you get hacky with mount points and linkages that is. Now, being frugal, I created an archive of this data folder (com.android.browser) from my root shell, then went into Settings -> Applications -> Manage Applications -> All -> Browser, force closed the browser and hit clear data. Problem solved.

Being of the SQLite3 varity, I'm sure I could splice anything of interest out of the backup back into the new Browser setup, but I'd rather get more done. An advantage of the important parts being either in cloud (book marks) or brain (passwords, etc), is the lossage is minimum. If anyone has more data on what causes it to go wonky, or on com.google.process.gapps in general, I'd be interested in your comments.

Someday I really would like to get myself a git checkout of the Android source, but I think I will wait until after Ice Cream Sandwich for that.

Wednesday, October 5, 2011

Web apps or native apps?


On the desktop, I will generally opt for using a web site over an application where possible, except when an application is seriously more convenient. For example, at home I typically rely on webmail and forgo using a local client; at work the inverse is true. GMail is one of the best ways to do e-mail :-).

When it comes to e.g. Android, I will often opt in favour of a decent app, over the web version. Apps generally have less overhead then rendering a desktop-oriented website, heavy on JS and meant for the mouse, yet mobile apps sometimes suck compared to websites; mobile or web version. When it comes to Google stuff, I use the apps. The mobile versions (at least on my TF101) are fairly similar to the mobile apps. The desktop *<b>web</b>* versions are best, but the Android apps are O.K. Contrast: the Facebook app has always been crap, compared to either version of the website.

The advantage of going web with it, is that the cloud auto-magically can solve a lot of little logistical problems. Like keeping data in reasonable sync, favouring search over storage, and removing the issue of "Maintance" -- all you need to keep up to date is usually your web browser, once in a blue moon. It is even possible to have web applications that are aware of one another, although this is sorely under-utilized in reality, versus what can be done. Facebook stuff is probably at the forefront, in more ways then one (but not all of them awesome).

When it comes to using an App, you gain hopefully better Native Integration. On the desktop, not so much in my experience: stuff like Mozilla Prism and Chromes app mode just don't cut it just yet, nor does the whole add-on/extension crapola. I'm talking a *<b>Real</b>* native application. Thunderbird versus GMail. Thunderbird will always have better integration with today's PC environments than the GMail's web app. Well, knowing Moldy old Mozilla maybe not always, but you get the point ^_^. The few exceptions that I've seen are products like Dropbox, where the native application _is_ the major selling point of the experience, and thus makes the cloud go round. It just happens to have a useful web user interface to boot.

Native applications open up a whole world for interesting savings and mangles. A good example, using an Android phone, you can have device local, mobile carrier, MS Exchange, Google, and Facebook contacts all synced even though they come from seperate providers; anyone could extend their service like this, fundimentally. That's how stuff should be done. In some cases (Google, Exchange) it is even possible to have calendar data synced. The downside is that doesn't get merged back into the Google-cloud, and that is probably a Good Thing(tm) even if I and others might like the option of it.

I think the web is one of the better interfaces for creating applications, if you want a UI that isn't better mapped to command line programs. Android offers quite a nice programming model, and I assume that iOS and BlackBerry-land offer something sufficent. The world of PCs not as good.

Personally, I think in the future, we will see the evolving "Mobile" experience rise up and destroy both the PC and Web 2.0. The difference is, it will be Mobile 3.0 :-). Then this will all fade away until such a millienia that notions like PC, Mac; Desktop, Laptop, Phone; all of it fades away into being about as interesting as using cornkobs to whipe your ass instead of the three sea shells.

Given the choice, it's obvious where I stand. But the real question is, does it run unix? :-P

Tuesday, October 4, 2011

In cleaning out a hard drive, I stumbled across a personal DokuWiki I was running. It has various stuff in it, ranging from stuff such as a guide to making Live Operations and tryout info. For momento's sake I guess, since [SAS] was such a big part of my life, I've adapted the Service History part of my own wiki entry.

It can be found here.

Sunday, October 2, 2011

After a day and a half, when my mother started to bug me again this morning, I decided I was getting out. So, packed my phone & Andrea in my pack, grabbed my open bottle of water, and hit the road. Picked a direction and followed it down the super highway. After some jackass nearly slammed me off with his inept driving, I picked another route, and danced down side roads, until I eventually ended up on a freeway bound for Stone Mountain.\

So I spent the day huffing it up the mountain and then trying not to roll back down. Last time I was there, maybe early 2000s, we had taken the lift up to the top and back down. It was kind of nice to get to walk. I can't help but wonder though, if the power cables being tied off along the trail was some penny pinchers idea of "Oh, we can route power up this way to the snack bar at the summit, then use it for the hikers too!" Just so they wouldn't have to make a separate trail lol.


Definitely though, I prefer back woods over mountains!

Friday, September 30, 2011

Evernote sucks

Thumbing around the Android market, the Evernote app caught my eye again. So I decided why not give it a go, it's probably the best note taking app for Android (and I admit, it probably is). Thus I installed the app, created an account, and went about setting up the Windows app for my desktop.

Last time I went searching for a note taking app, I settled on the Viki plugin for vim. I probably entertained a several dozen stuff, including Evernote. It never made it past the information gathering phase, since it lacks support for Linux and *BSD. Having adapted an ASUS Transformer as my primary system, Android support is now good enough. Evernote AFAIK is widely used and reasonably respected in the business of note taking software. No wonder—it's about as useful as a notebook and a pencil.

I am not your "Joe" note taker, that I will admit. My notes are frequently pre-processed data. Things where re-parsing it back into my head and bringing order to notes is fairly important.


The desktop application failed glaringly as less than ideal support for:
  • Concept of sectioning is limited to font size/style and horizontal rules.
  • Structure is limited to indentation, bulleted lists, numbered lists, and tables.
  • Cross referencing data is primitive but effective.
  • Support for "Snippets" of formatted content is limited.
    • as in sample commands.
    • log data and program outputs
    • definition lists.

The Android tablet application despite the awesome user interface, suffers from all of the same plus the following gotcha's when editing text notes:

  • Indentation is gone.
  • Adding links is gone.
  • Font styling is gone.
  • Adding tables is gone.
  • It's to dismal a prospect to test how links, indents, font styles, and tables render when viewed in the app.


Simply put, ever note is more primitive a note taking system than Microsoft Word, and it's only advantage of adding something like Dropbox or Google Docs to that mixture, is the sync feature. In fact this blog editor is much more powerful than Evernote, even more so because it can take raw HTML.


For a stress test to evaluate if I could tolerate life with Evernote, I tried to reformat one of my notes files from Viki by copy/pasting the content and adjusting. The note consists of numerous sections/subsections  (at least up to 3 deep) and various lists, links, and pre-formatted data; nothing you can't do in raw HTML, LaTeX, etc. Or even plain text if you roll your own conventions as per org-mode or deplate.

After about 80% of the file, I  just gave up as it came to my mind that "Evernote is about as sophisticated as using a notebook of paper and a pencil, so why don't I use that?"—It is just so far underpowered that I would get more value out of notepad.


Some could say that I'm being too strict, but hey, I am strict when it comes to software that I will spend *excessive* amounts of time using. If I really wanted to nit pick, I would mention the lack of folding, not that I expected that from an app focused on "Notes".

A little fun with linpack

It's a bench mark thingy for Android. Basically you push the single threaded or multi threaded button and it gives you Mega FLOP'age for solving some equations.

Running at a fairly idle load for just sitting at the end of my desk, my phone scored about 3 and 3 1/2 MFLOPs. Nice little Optimus T, and a device I know doesn't have a lot of processing power in general. In fact, it only has like a 600Mhz CPU.

Now, Andrea on the other hand is running a full load: instant messenger client, client for our internal IM system, web browser, Samba, terminal environment (btep, openssh server, several bash, several openssh client connections, and a long running vim instance). Plus whatever is in the background, WiFi and syncs are on&mdash;plus TexTab is linked to my phone over Bluetooth. In short, it's pretty much at a typical load for me. The results were about 30 and 50 MFOPS.

I really would be curious to take a freshly setup and stripped Transformer, and see how high that might go. AFAIK the best super computers top out near 10 Peta FLOPS and the most powerful x86 chips around 100 Giga FLOPS, and top notch graphics cards blow that away. I'm not sure I want to know what the various x86 chips I have laying around, but ~50 Mega FLOPS sounds good to me lol. Most stuff I saw on linpacks website seemed to range from 25 to 100, and often big gaps, e.g. while some people might rack up 80~100 MFLOPS most would get 60~65 MFLOPS.

What really impresses me though, is the "Experience" offered, I could care less about Floating Point Operations per Second but quite a lot about being able to *use* my system while under load. For years, Firefox+Flash was enough to almost overheat my laptop (and nearly did on several occasions, just with Firefox!), throwing on a compile would generally make me worry about my laptop halting and catching fire. Andrea on the otherhand, has been managing the same task set without even blinking an eye.

I can surf, chat, stream music, code, and compile without blinking an eye.

What somewhat irks me, whatever this Android tablet/netbook is doing in it's architecture and with this ARMv7. It puts to shame any x86 system I have used....except for the development server at work, and that has  multiple multi-core Xeon processors and a shit load more of memory lol.

I really would love to try an ARM powered system in a desktop config. Maybe run Linux or OpenBSD, and try for something like the next gen processor cores and as much RAM as she will stuff. Hehe. Andrea is powered by a Tegera 2, so that's basically a 1Ghz dual cored ARMv7, sans NEON, if I remember correctly.

Thursday, September 29, 2011

Fun with tmux & dtach

Generally the problem with running a terminal multiplexer like tmux or screen on a remote server: is if the server goes down so does your session. Like wise an issue will eventually crop up where in you have to SSH into another server or even the box you're sitting in front of, if you don't want a seperate xterm in order to do it; thus losing all that multiplexer goodness.

Well, I pretty much run the session (tmux btw) on my system, and then use dtach for running things I may want to detach from&mdash;like a big compile. One perk of this is I get to have my "notes" window in tmux without double the latency.

Today, I was thinking about how can I link this notes window to various tmux sessions? It is possible to link windows (linkw) in a session and entire sessions (new -t {other session}) but that is not what I want. dtach again to the rescue! My notes script already amounts to opening my "Scratch" note file in vim, and changing the window name to "notes" if used in tmux. So I modified it to be smart enough to run vim in dtach, or reattach. Thusly, I can have tmux sessions by project, home, etc, and share the same vim session between them using dtach.

Note tacular!

A case for autotools that I have only recently begun to understand

Like just about anyone who has ever had to install software from source has, I have /used/ autotools before. But like many barely ever scratched the surface. Lately I have been cuddling up with the autotools from a developer perspective, a lot more. To the point perhaps, that I am liking autotools better than I ever thought I would. Like anyone whose used more than 1% of autotools, I know you can (or are supposed to when the developer did it right) be able to run configure/make outside the source tree. Also I know about --prefix and most of the usual configure script goodness. Now, it's far from the first time that I have mentioned it, but my "Holy Grail" of builds has long been a multi-tree build:  one tree for build files, one tree for distribution files, and trees for whatever source and data files are needed. Then because I may be doing a diverse set of platforms, this usually becomes a need to further grind down into having co-existing build/dist trees: for example to have FreeBSD, OpenBSD, Linux, and Windows NT builds in the same working copy. Including using different toolsets, such as GCC 3.x, 4.x; and MSVC 9.0, 10.0 on the Windows NT builds. Now that my main computer is an ARM, processor architecture will probably end up mandatory. I like stuff like Build/platform/toolset. Hacks to keep this sort of thing working under {insert random OS here} should be kept to a minimum. How well a build system supports helping me with this problem (and file system hier) is one way that I judge build systems. Over the years, I have tried...just about everything except ant and maven but hey, how many C/C++ projects do you see using those at home? Multi-lingual stuff is always idea. At present, my favourite build system is premake4 -- it makes setting up such a build pretty painless. After that is probably Qt's qmake, since it makes compiling fairly painless. With the GNU build system, it is pretty easy to do something like:
    $ cd Build/Linux/ARMv7/gcc44
    $ ../../../../configure --prefix ../../../../Dist/Linux/ARMv7/gcc44
    $ make install
Which would give something well suited for testing, and there is a config file to save whatever configuration options I usualy test with in $prefix. The check and installcheck targets also do what I will typically do with a `make tests` or a `./tests.sh` in my own working copy. To top it off, autotools probably has one of the best tools for making a distribution: make distcheck. I do not need most of what autoconf can do, and usually prefer to skip it. The ability to have things fail at configure rather than compile time is handy. Being able to e.g. toggle between Deps/{pkg} and the systems {pkg} at configure time is great and something I already do with premake4. Automake can also pretty much do what you could get out of not having to hand write Makefiles. What REALLY shines however is libtool! We have all cursed at something or other involving autoconf, automake, or libtool. But the little secret is libtool is one of the best assets ever given to a developer. If you don't think so, you should try to alcomplish the same thing in SCONS for a solid week, just to support three platforms with differing toolsets, unless much as changed in a few years: the amount of kludges is a recipee to be pissed off. libtool can pretty much do it all and for a lot of platforms. The real question is how well autotools would really play with doing a Windows NT build with Visual C++. I've never tried that. That is also the principal reason I've never used autotools on most of my projects lol.

Tuesday, September 27, 2011

Your Vehicular Retardation is Showing Again

This morning on the way to work, at one of the side junctions I was fortunate enough to slip into the turn lane while the arrow was still green, but had to content with only a solid green light for turning left. In America that means YIELD to uncomming traffic. To top it off we had a cop dealing with an incident right where I'm aiming to turn. Thus I've got to wait on the cop and the oncomming traffic. It's big enough a side road to have it's own through traffic, thus a trio stacks up waiting.

The blowhard behind me starts beating his horn, because I won't choose between getting slammed by oncomming traffic or running OVER a police officer. My response? Give mister retard a nice one fingered salute and wait until it is safe and legal to roll: without causing murder or car more wrecks.

So many people in this state should be ashamed to be on the road!

Sunday, September 25, 2011

Google just made my day

Was trying to look up a word I had stumbled across too far ago to remember, so I typed the definition into Google in the hopes of finding a clue to it. I didn't expect my chuckle of the day!

How Google shapes history

I seriously hope that is some Google Engineer's idea of a joke about sex shaping history.....lol



This is from a real screen shot, not a photoshop!

Saturday, September 24, 2011

An interesting idea for Android development

I could hook up my rooted phone to my netbook turned server, write the code using my ASUS Transformer, then run a batch job over SSH that compiles and installs the app on my phone.

Then connect to my phone via VNC and test it off the same Transformer :-)

Friday, September 23, 2011

PostScript (.ps) versus Portal Document Format (.pdf) - from a users perspective

Generally, PS is pretty much a dead format today. The only time a user is likely to see significant amounts of it in my experience, is if they are dealing with quality printing. Reality is almost everything comes in PDF (or Word/Excell if from retards), and morons assume that Adobe Acrobat is the only reader for it. Most people don't know that PS exists and to many are just to lost to figure out what a PDF is (ugh, grow up!). The simple facts:
  1. Post Script is text based
  2. PDF is a binary format annd offers some programmatic options where supported
Here is what makes that interesting! I have numerous files in PDF and PS formats. Most are under 5M and are PDF. Now there is a monster called The_Complete_FreeBSD.ps that weighs in at a whopping 60M!!! My largest PDF files were around 12M to 16M. I'm compressing stuff I don't use frequently but don't want to erase for space reclaimation. So I compressed everything over 2M with XZ to see what files will compress enough to be worth having to uncompress them next century. Most PDF files contained a few embedded images, so savings were on average about 1M, e.g. 15M becomes 14M. Useless. A few files that were more exessive on text shrunk from between 3.5M and 4M to between 1.5M and 2M. That is nice but still to small to care about, because of the original file size. The 60M PostScript file compressed down to 1.6M!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Size checks were done using du -h and compression with xz -e. Being more textual and less binary, I infer that we can get better compression ratios out of Post Script than PDF. Although it is possible to make a PS file that is pretty binary for all practical intents and purposes. But that was surprising....lol. Post Script: In point in fact, I think the only organizations that I have ever seen acknolledge other PDF readers exist, have been Canadian govermenta, which even went so far as to note XPDF, an old choice among Linux/Unix users. +1 for the Blogger app for Android remembering what I started writing ages ago witout me even having to click a draft entry, hehehe.

Wednesday, September 21, 2011

How technology has impacted my blogging/social media habbits

So far, my blog has seen an interesting return to pretty regular usage? Why? I'm not really any less busy with the stuff that I do, but I find with Andrea that I am posting more frequently. It's not that the Android app is anything to write home about, in fact I will probably get googlecl loaded on her so that I can use my blogit script. It  is just a matter of convenience! The app icon on my home screen is right there, always in reach, and it is so easy to jot down a quick entry on Andrea.

Thinking about that has also made me realie part of whyI use Google+ so much. The privacy system being almost perfect and something that I'm 110% comfortable with. Having thebutton right on top of the Google pages. It isn'tneccesary to travel very far. When you are busy and either frequently having better things to do or constant interruptions at home.

Tuesday, September 20, 2011

Interesting findings. At work, my work station has always had problems using SMB/CIFS, in fact  it is almost useless but fortunately being Linux-oriented over here in Engineering, more traditional unix methods are favoured, so it is of little loss. Now the sad fact that most people use Windows, means that SMB/CIFS is easier to work with under Android than stuff like NFS or any of the multitude of similar techniques. As I rarely need to share stuff with multiple people, for my own stuff, I typically use SSHFS.

In fact, SSH is both such a part of my work flow between machines (here and espiecally at home), I wrote a handy script that lets me quickly mount my $HOME on a remote as ~/hosts/{hostname} locally. It's useful. My workstation is setup both as a SSH client, server, and sshfs-mounter. But how to get stuff via Android, since I can't just use CifsManager?

My ASUS Transformer obviously has support for FUSE, just looking at what `mount` says is enough to guess that. But there is no real support for SSHFS, all the goodies are missing. Since I have a very simple chroot of Debian stable, a quick `apt-get install sshfs` and bingo, all done :-). Since the stuff I'm interested in mounting at home (where SMB/CIFS works like a charm), I can just use SSHFS mounts and a shared socket. I.e. I can have things like my Dropbox mounted, get live sync, and even access locally!

Muahauhauauhuahuaaaa!!!!!!!!!!!!!!

Monday, September 19, 2011

Geekicious mixed client workflow

Okay, that is a post title that only a geek could love. So sue me, I'm geek lol. My battle pad is now fully operational, and should soon feature a charging cable extender and screen protector.

Today, I found that while the Debian chroot I have works well, sadly the linuxinstaller app in the market sucks at setting up resolv.conf. So I edited the init script it uses for an entry hook, to detect my home network and the corporate WiFi. Sadly, doing so results in DNS names going external, so something is still fraked. On the upside, editing the chroot's /etc/hosts works, and that is what everyone here does. Never mind that the important servers have DNS names and OpenSSH can alias them to any shortname, but alas, it works.

One downside of running a terminal session on Android, BTEP will get reaped if you don't use it for long enough. Like wise the linuxinstaller doesn't run your bash as a login shell (!) and it's a bug to remount the path to linuxchroot.sh as rw; so... I found how to kill two bugs with one rocket. I can leave a tmux session running and reattach at will. Muahuuahuahauhauhauaaa! Quite nicely, if I run the tmux session on the server-end, I can attach to it from another box (like my workstation), and use X forwarding; if I create a new tab from the X-terminal, it inherits enough environment to easily use the X-terminals X.Org server :-). This is even cooler because I can have the undesturned mobility of a 'book or tablet, yet skip fouling my X session. There is also the VNC trick to run X clients on Android but I have not tried it, nor am I very interested right now.

A new idea occured to me while chatting with a friend, namely that I can export my notes directory from alice or my workstation, mount that on andrea over cifs/smb or NFS, edit locally, then get the Dropbox live sync goodness. Which still works because while alice is running at home, so is her Dropbox client and my cronjob to auto git commit my notes files!!!

Muhauhauhauahaaa!!!!!!

Sunday, September 18, 2011

Hmm, so far operations with Andrea are moving fairly smoothly. Today, i spent a little time using Eclipse to try and prototype an idea, but soon gave up. Eclipse is a reasonable enough IDE but for Android work, the extra editors and crap are just not as useful as opening the file in the text editor, and if I may as well, then I will use VIM and execute the Android tools directly in a shell. Piss off.

I've been exploring the Android market more of late, because Andrea has so much more storage. My phone has limited internal storage so I rarely will use an app unless it offers something I find practical, like Dropbox & Opera. Rooting it helps since more stuff can be moved to the MicroSD card. Andrea on the other hand, has a lot more storage capacity: about 28GB user accessible from a market value of "32GB". I'm still principally interested in apps that get work done. Two that I've been playing with today, are TextTab which is pretty much using your phones SMS from your tablet via Bluetooth.It's awesome, it works, it does exactly what I want, and I can't say the say about the Bluetooth SMS app that I tried during yesterdays shopping expideition. Something else that I tried, is a TeamSpeak 3 client. From the look of the write up, they likely intend to charge for it once it exits beta but it works as an OK client. Not enough for admin work or anything but fine for the core use: VoIP.

Alice has also been setup as a server, as part of cleaning my room. It will likely operate similar to the development server at work but for my personal projects, I've also exported some parts of my $HOME to the network. Eventually most of that will likely become stored on Andrea but for now I'm more interested in having it available. Andrea the tablet-book definitely brings my routine closer to the cloud than Alice the netbook but so far I am liking it.

Using a netbook as a mixture of development server and network attached storage may seem very weird. To me, it also has the added benifit that while I may lose my connection as the router goes offline - in a power outage, my session state in tmux can be saved for as long as the battery runs. Plus I could reattach locally  and have the same keyboard as the system I was working on. Muahuahauahuaa!!!!!!

Friday, September 16, 2011

Using my phone as a bridge between wireless networks because the in-store WiFi doesn't cover enough stomach my other's shopping. I will also admit that while I prefer Andrea to my phone, I still *hate* shopping!!!

Not how I like spending my time off work by far.

Day two and I almost kilt her but now I has root

After setting up my Eee Pad Transformer over night and lunch, I went about trying to root her after getting home from work. Flashing Andrea seemed to work fine, give or take that I normally have reservations about flashing stuff I haven't personally proofed. It was marked as being appropriate for my SKU and release but left Andrea booting into a garbled multi-colour screen....a small fortune in paper weights.

I quickly rebooted Andrea into APX mode and searched Google for a way to unroot back to a stock ROM, even if that meant the original version. That soon lead me to Roach's Prime v1.4 ROM, which I flashed to recover to a blank, usable, and rooted state. You can't upgrade from Prime v1.4/Honeycomb 3.1 via ASUS updates, so I hit the web again to see if he had released a newer version of the ROM, sure enough, he has gotten up to v1.9! A quick look about showed me Prime v1.7/Honeycomb 3.2 stable and a 1.8 version in beta. So I tried to install the Prime v1.7 ROM as an update. Now that isn't so hard, you basically save the ZIP archive and install it using ClockWorkMod via a recovery boot. The problemo is the ASUS Eee Pad Transformer sticks the internal storage at /mnt/sdcard with a link to /sdcard. Using a real memory card or USB device will go in /Removeable/WhatEver. So CWM couldn't use the update, 'cuz it couldn't mount /sdcard.

Having missplaced my USB stick some time between work and vacation prep, I gave it no attempt to try that option and instead went looking for memory cards. I had purchased a pair of SD cards when I had bought a digitial camera a couple years ago, as it hadn't lasted very long, my mother inherited them for her Dell Streak 7". She had no idea where they went, so I checked her streak and found one - loaded the archive, stuck the card in the docks slot and bingo, same problem. So I removed the file, stuck that back in my mother's tablet, and ripped the MicroSD card out of my phone. Sure enough that worked and in a few minutes was greated by a Honeycomb 3.2 versiion of Prime :-).

So now Andrea is alive, functional, and rooted. I just had to trade ASUS support for the brillance of Roach (that ROM saved my pad), and had to reinstall everything because I didn't do a proper backup first. But that was a simple fix of redownload stuff off the Android Market via the website. I ain't stupid, lol. When I get home, I will probably try to update to the v1.9 if it seems stable enough, but by the time I can get around to that, I will want to backup my stuff first.

After getting everything settled, I finally decided that it would be a good idea to register on xda-developers, since their forum is like most important place on the web for stuff like this. They have the most awesome forum registeration process ever, including a video. It's worth it lol. Poking around the forums for my devices, it seems that it may be possible to flash a stock ROM after all but I would rather stick with Prime at this point. I'm also interested in seeing what gets cranked out but will need to aquire a suitable memory card before I can likely do much serious backing up.

I'm really thankful that Roach and cie made that available...lol

Thursday, September 15, 2011

Enjoying the Android platform

It's about 13:37 here and about half way through the work day. Normally I use a mixture of my workstation, Alice, and my phone; lately I have been using Alice quite heavily. I guess there is enough crap going through the wires that sometimes it is better to offload some of the heavy network traffic, plus it is rather handy that if I need to get up and walk around to do something, I can bring my /entire/ session along with me. So my workstation isn't Mission Critical to doing my job. In fact, it is pretty much a heavy weight client doing what a humble X terminal could do really.

The important things to getting work done around here, in regards to all that, is a terminal, SSH client, and a web browser. Last night I setup the free Android Terminal Emulator app that I have on my phone, only to find that it seems to be crash happy on Andrea :'(. Likewise I setup ConnectBot for SSH access, only to find that it doesn't support real modifier keys. So I can't use it with my docks actual Control, Tab, Alt, etc. ConnectBot does work great on  my touch screen phone though. How did I solve these problems? After spending for the tablet and dock, I can't bitch about paying another $4 for Better Terminal Emulator Pro (BTEP). Not only is it stable, it includes ash (probably dash but I haven't checked), bash and busybox in its toolset. Dropbear is even slipped in for SSH, which while not something I like, will do fine for at work needs.

I can SSH into the development server at work, use tmux & vim, and go about doing stuff. Heck on a good signal day, I could stand next to the Microwave with the tablet portion and keep coding! I can do that with my phone too but practical issues like screen size/virtual keyboard, mean going from vim to ed. Emacs should even work but I don't use it. All that is missing is a native X Server, and I could fix that with some rooting and VNC stuff, or maybe try to write one, idk. My workstation can deal with that slice of stuff easily.

To top it off, 94.9 has always been a bug to keep playing since they moved to a Flash based web player. The iHeartRadio app on my phone works but ahem, sound quality blows. The app doesn't support Honeycomb tablets but I was able to download and install it manually, then setup the radio station to play using portrait orientation: the app doesn't do landscape. So now I can finally work and listen to music without having to periodically stop to kick the radio stream into working :-) :-) :-).

I is satisified so far!

Hello Andrea :-)

Today, I went out and bought an ASUS Eee Pad Transformer from the local Microcenter. It is very much like the ASUS EeePC, or at least the 1015PE I have been using since retiring Dixie. In point of fact, I am typing this up on my new Transformer! It took quite a while to charge up enough to get to the updating but it was a very simple, quick, and easy process to update from Android 3.0 to 3.2; one of the things to attract me to this device, has been that ASUS seems to be supporting it much better than most companies have been supporting their mobile phones.

Being so much like Alice, which is also an ASUS product, I have named this Android "Andrea". The Transformer has interested me since I learned of it's existence, but I didn't quite think I would be purchasing one so soon lol. I will admit, that the differences between an Atom N450 and a Tegra 2 interest me. As does the notion of pushing Android harder to its limits. What really makes it worth while how ever, is between the dock and the tablet, the battery life should be insane.

Compared to the EeePC 1015PE, it is very similar: most external differences are more cosmetic or a reflection of the change in internals; like the ports involved. Andrea has basically the same keyboard as Alice. Except the left Windows and Alt keyshave ben replaced by "Home" and "Search keys". Android doesn't understand function keys, so rather tha being Fn+F* combos, various operations are instead directly accessible via the top most row of keys. There is also no numpad to enable via Fn+F* key, not that I have ever used this on a mobile. Oddly, delete has been replaced with lock where as appropriately, escape was replaced with "Back". While docked the keyboard operates as you would expect, there are only a few noticable irregularities when coming from a PC. Mostly things like Control+Arrow-key or Control+Backspace are not working, although Control+A, Control+C, Control+X, Control+V combos working. Fair enough on a touch screen oriented OS I guess. Alt+Tab even works, more or less like long-pressing the home button on an Android 2.x phone. Using the cursor/tab keys to move around does not generally work as good as a PC user is used to, although such PC users are probably a dying breed. The touch pad however is very nice and useful. Very enjoyably you use left click/tap as on a phone and right click as an alias for the back button. Context menu is usually a soft button on the bottom or top side of the screen.

As a tablet, I personally would prefer a smaller screen like my mother's 7" Dell Streak. It just feels more managable in my hands. As Andrea is meant to be docked, I am quite happy to have a full 10.1" screen. The resolution is also one up from what Alice supports, which makes for an interesting experience! It is so much easier to use Android on a 10.1" at this resolution then my phones lowly ~3.2" HVGA display. Changes to apps like GMail and the like, generally seem to be improvements for having a tablet sized screen in Honeycomb; I am somewhat interested to see what happens in Ice Cream Sandwich and Jelly Bean.

I have the TF101-B1 version, so 32GB is a lot. Most stuff on my phone is on the MicroSD card, and I only maintain 35-50MB of space. Andrea came loaded with something like 200MB of space in use out of 28GB accessible, a pretty good deal. Especially since unlike my phone, it isn't loaded down with applications, even if the updates to 3.2 added more. Alice is only 11-13GB with a bunch of software installed on GNU/Linux, less than 4GB of which amounts to my home directory. So I am pretty sure that I don't need to wory much here! I can also use memory cards and USB devices for more stuff. ASUS preloads it with a bit of My* apps, including a form of ASUS Web Storage. I have tried it under Froyo and Windows XP, Dropbox is better, and has the advantage (unlike ASUS Web Sotrage) of being able to access stuff in app when you are disconnected. Android client is OK other than requiring Network access (or side stepping out of app) but the Window PC version just sucks, period. FWIW though the integration into MyCloud and the procing is very nice&mdash;but I will stick with Dropbox.

Honeycombs UI is very enjoyable for me, and I am kind of impressed by the bundled office app: Polaris Office. Haven't used it very much (just for documents) but it is nice. Something that really aces it for me, the Browser app is much more like Google Chrome than the Froyo version. Running off a 1Ghz dual core instead of a little 600Mhz single cored ARM, it is also fast enough that I don't need to reach for Opera Mobile.

So far, I'm lovin' it. Really the main lossage is a native X server. I would have to root Andrea and set things up using X/VNC. Except for a few things I do at work, I don't need X, as a decent shell environment or a SSH client to one, does most of what I need. Hehe. My only real complaint is that while Alice has a _long_ charging cord/adaptor, Andrea has a short one :-/.

Wednesday, September 14, 2011

Where is the money going?


Over a period of 8 1/2 months, I have made a bit over $18,000 net. I don't record my gross, only my net, but a guesstimate based on my pay stubs would say my gross so far is over $22,000.

So far I have spent close to $3,000 on my mother, this includes groceries, bill overages, being dragged off so she can have a whopper, etc; but excludes stuff like gifts and bribes. That is excluding whatever $$$ she gets for this month (originally slated to be +$500).

By the time I refuel Noëlle, I will have spent almost $1,000 on petrol. Moving has really helped this a lot, even with higher gas prices and my mother's overages sometimes pulling into my petrol budget; I will gladly take $50 x 2 weeks over $35 x 1.5 days any day! For the mathematically challenged, that means I spend at most 2/3 what I used to, even with gas having gone up $1~$1.20+ per gallon!!!

So far I've spent almost $550 on games, that divides into about $150 on myself and about $400 in gifts. Yeah, I can be kind of generous. Also I tend to buy several copies of major games (like pre-ordering the 4-pack of Dead Island) when we get into things, and when playing related games (e.g. L4D/L4D2), I'll often 'balance the equation', so that we can all play together without having to lose people because of the lowest common denominator in our inventories.

Consumables such as snack foods and eating out has been $150, excluding the times my mother demanded we eat out (which is therefore calculated as how much I've spent on her). Some of this is from having to buy lunch after the move but most of it is just splurging on my stomach. My $2 limit on impulse snacking doesn't work if I already decided on it...:'(. I needs to work on trimming back on this a lot.

I've paid $1750 in car payments and over $1800 in car insurance. (Yes, I am getting seriously rapid for not having my license since 18.) If you combine that with petrol costs, I've paid out like $4,500 in automotive expenses thus far.

Technology has consumed approximately $600, which amounts to stuff like my monitor and Alice. Both were major upgrades over what they replaced, and actually, significantly cheaper in the end sum. Never mind that most of my technology tends to last years longer than a lot of other peoples crap.

Clothing has racked up less than $80, you can tell I'm more an engineer than a fashion mogule there.


Paying for the move from Newnan to Duluth, and a vacation to Canada, have rather raped most of my savings but both were well worth it.

Tuesday, September 13, 2011

After spending at least 45 minutes pacing the halls here, courtesy of a power outage, I must admit, I see another perk for upgrading from my netbook to that ransformer: the battery charge is enough to supplement my work station!

Most of what I need to do off my work station, can either be done using Android or done on Android, as long as things are properly setup. So me thinks it is worth a shot. Not to mention the extra charge would also be really nice when travelling.

Monday, September 12, 2011

So, tonight my mother got yet another Blood Glucose Meter, because the one she got from this one company was to inacurrate, and of course the replacement is to. So she has seen it setup a couple of weeks ago plus already has been shown how to use it. My mother must have at least eight different meters by now, six minimal, and they all are programmed and operated the same.

I obliged her by putting the battery in and telling her to do the rest, as she already knows how to use it. But oh wait, the date is wrong. Never mind that AFAIK she doesn't actually use (let along know how to) the meters memory to record her stuff, in place of paper (oi). I told her to RTFM.

Now not everyone who is not diabetic, or been around those that have (I have for most of my life), setting up the meter is as complex as setting the time on a wrist watch. You push one thing to set/toggle what is highlighted and another to change the current one forward. Easy, simple, universal, and oh so clearly documented in the manual. It is not hard. Maybe wrist watches have gotten harder between when I last bought one eons ago and when cell phones took over but still, it is not that complicated. Seriously, it's so easy s child doesn't even need the manual for something like that. Either that or I must have been Really Smart as a small child.

After an endless stream of being used as a substitute for her having to do anything, be it this or other things, I drew the line: either figure it our yourself or I'm charging you all the money you owe me as punishment. Because if you're not learning to fish by being given the "Nice" treatment, it's time for to terminate the politeness.


So obliviously, because I don't think my mother should be allowed to use her lack of ability to use grey matter, and her diabetes as an excuse to have me do everything for her without her learning how to fend for her self even as much as a child can, I am the most rotten bastard one earth? Wow. People need to learn how to fish for themselves.


By now, on the  metres alone, it's a picture to me that is more or less like a young parent asking an old mother how to diaper a child: sure, I'll show you but that doesn't mean you don't have to diaper your own kids ass.
When my website takes a more proper shape, I will likely hack at my blogs styling to match it.
I've been thinking a bit about what to do with spidey01.com, mostly about the implementation; I think usage is perhaps deserving of another entry, so as to keep this quickly written.

My host like many, focuses on PHP. Unless you specifically go somewhere that specializes in language xyz (such as a Engine Yard), every host does PHP&mdash;because that is what most ass clowns want. Now me, I know enough about PHP, that I have no desire to utilize it beyond running canned web apps written in it, such as stuff like Mantis or MediaWiki. In fact, I prefer to avoid even PHP powered web apps unless it is best of breed (Mantis yes, phpBB no, MediaWiki maybe). You can say there are three languages I don't like the taste of: PHP, English, and Java; probably in that order. I have my reasons for each but that's not the subject here.

Now, I am rather fortunate spider because my host provides a lot more than just PHP :-). I can't say that I particularly care for the heavy weight frameworks some people use: Ruby on Rails, Pythons Jango, ASP.NET, or Java land in general. Something smaller like CherryPy is more my speed but I really don't want to deal with that right now. In all probability I will likely try using Perl or C++. Why Perl, because I love it, or C++? Because I use it.


On the subject of Perl, most people will likely look at something like Catalyst or rely on the built in CGI module. Me, I would prefer something more like Dancer. Which is exactly the kind of web frame work that I like: small, concise, powerful. One that lets me focus on what the fuck I am doing and not how the framework decides things are stitched. Ever since I first bumped into Dancer, I have always wanted to try it but never had the website or the cause, hehe. Dancer+Moose sounds like a very good idea to power my website. I cannot think of a framework that would make me happier than something like Dancer, unless there is one that mind maps thoughts to implementation code, and then just makes it magically 'go' at deployment time.


I must be insane to be thinking of doing web development in C++ in 2011, but hey, why not? I assume that statically linking the (C/C++, and compiler) runtime libraries and any associated dependencies I may wish to link with, should be sufficient to deploy as a CGI program. This blog page suggests that it is more or less possible to do it easily enough, and the GCC manual suggests it should be O.K. for my deployment targets.

A little test on a Linux box:


    $ cat > s.cpp
    int
    main()
    {
       return 0;
    }

    $ g++  s.cpp -o shared-s
    $ ldd shared-s 
      linux-vdso.so.1 =>  (0x00007fff4a9de000)
      libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f61fdead000)
      libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f61fdc28000)
      libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f61fda11000)
      libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f61fd67d000)
      /lib64/ld-linux-x86-64.so.2 (0x00007f61fe1da000)
    $ g++ g++ -static -static-libgcc -static-libstdc++ s.cpp -o static-s
    $ ldd static-s 
      not a dynamic executable
    $
  

Never really have tried it for an experiment like this before but I assume that I can have the web server rewrite URLs in such a way that it passes them to my program or a script, which then processes them accordingly to a configuration file. The utility of dynamic languages is great but the usefulness of more staticly typed languages is not out weigh-able.

O.K. now back to getting crap done.

Sunday, September 11, 2011

Finally, a real domain cometh!

Assuming that I actually set stuff up correctly, soon spidey01.com should finally be associated with my website. Which has yet to actually be used for much of anything yet, except a few map files and a semi-private voice service. As soon things are done, I will attempt to make blog.spidey01.com point to this blog as an alias. I know plenty enough abotu web development, it's just I am so darn lazy about getting stuff put up, given that when I'm not working, I'm usually interested in hanging out with a certain Firefly...hehe.

For how bloody long it took me to get all of my content here, I am not interested in leaving Blogger right now. Maybe someday I will transition to some software package, or write my own, but I am perfectly happy with Blogger&mdash;and the only "Mainstream" package I know for running it myself, is Wordpress: which can suck rotten eggs and die as far as I am concerned. So unless I get an intense interest in writing web blogging software, nothing will change, except there will be multiple ways to access my blog :-).

Both spidey01.blogspot.com and blog.spidey01.com should refer to THIS website. There is no significant difference, except some more 'advanced users' of my journal/blog may experience issues if they are using bots that do not understand redirections.


Which one should be considered canonical, well that is up to peoples bookmarks and Google.

Tuesday, September 6, 2011

Thoughts on the cost of modernizing my techno-farm

At the present my techno-farm, for lack of a dedicated cave, consists of only a few systems:



  1. SAL1600—Gaming system, cica 2006.


  2. Alice—Netbook, a mid-2010 model.


  3. Vectra—Franken server.


  4. My phone—A simple froyo based LG Optimus/LG-509.



Dixie, my darling laptop lays retired along with spare parts from vectra's old case. My mother's PC, tablet, and cell phone are exclusive of my interest here.


A few quick calculations for my über penny pinching mindset:

My phone isn't particularlly spectucular but after a year of abuse, it still serves sufficently for what it does: excessive texting / instant messenging, and about as much web surfing/e-mail as a normal person might do on a PC. I particularlly like being able to lay down (without using a laptop) and chat/surf in comfort. My main beef is the limited internal memory (About 30M out of 150M, even with almost everything moved to the MicroSD card), and small screen size. A phone worth buying as a replacement, would cost in the range of $500 without any contract deals. A prime target would be something like the HTC Sensation. All things considered, I am generally hesitent to get such an Android device until 4.x is the norm, and I will likely use this phone until it drops over dead or the carrier offers a free/low cost upgrade at renewal.

After all these years, I will admit that despite being annoying years, SAL1600 has had quite a long life, it is only now just starting to show signs of old age (for my tastes). Sooner or later it will need replacement purely to keep pace with it's main task, running DirectX powered games. Within maybe 3-5 years the CPU will be to old for the job, and by then the capacity for memory could be exhausted (I've not upgraded past the stock 2GB DDR2). Building a new computer from existing parts can be done pretty cheaply. Maybe $400 for a modern CPU, mobo, and a chunk of DDR3 memory. Plus a video card. I like Windows 7 as far as it goes, and think modern DirectX is a good thing for game developers (because of the requirements for support), but the cost makes building up a modernized rig as bad as just buying a new PC and a better GPU. Whatever Windows XP would do if I suddenly changed out all the core componants, idk. But in the end, it is just cheaper to spend for a better GPU ($140-$200).

Like wise for how much all of that PC shit would cost for an overhaul/replacement, I could easily buy an ASUS EeePad Transformer and dock. That is a device I really like the concept of, enough so that if I had knew it was coming out, I might not have baught Alice but instead saved for it, then rooted it. However, as I do have Alice, which for less work lets me what matters more (i.e. a full unix/linux environment), I don't care to spend that much just for the possibilities it offers.


The end sum of things? I'd really like to persue these vectors but the Return On Investment is not high enough to make me interested in the expense. Given the choice, I'd rather save more or even pay off my car (a lot) faster. The average person my age, given my level of income, would probably go spending on gadgets like a raging bull in a china shop!

Wednesday, August 24, 2011

Some thoughts on tablets in general

In taking a look at tablets in general, I can't help but note if I ever did get a tablet for 'serious' use, I would probably be inclined to get something like the old HP Slate 500, slap Linux on it, and go. iOS and Android are pretty much the big shiz now when it comes to phones and tablets, but I'd still opt for something that I can put *my* choice environment on.


Reason why I would exclude iOS is because of Apple's control, I also do not feel that the platform is sufficently designed for "Hackability" in the way that unix systems and Microsoft Windows are. While I'd probably be willing to by a Mac someday if I could justify the cost, an iPhone or iPad really isn't likely to be something that I will ever buy for myself.

Android on the other hand, is similar but I would generally take it over iOS. What I don't like about Android is the lack of control. It excells at what it does but you can't really get that power over the device, unless you gain root access to it, plus setting up a suitable cross compiler or doing development on system with most present-day Android devices, would be mildly irksome.

Which makes me think, if the principal difference between something like a Galaxy Tab or a Slate 500, is getting to install my choice of OS, why does it have to be so? I mean, Android phones and the like generally have the issue of "Rooting". But simply, I think manufacturers should offer pre rooted versions at an additional cost. Like wise, I believe the world would be a better place if Microsoft Windows eventually took this model as well, although I find that unlikely before the next major version of Windows (likely NOT8), and I think it'd be a darn fine way for them to get sued lol.

Ahhh, but in the end, there is a real kicker to it. I have a netbook that offers everything that I want. The only reason to have a tablet would be if I operated in an environment where a netbook was inefficent, like travelling most of the time. So in the end, I do actually prefer my Alice :-).

Wednesday, August 17, 2011

Vacation Planning

I haven't mentioned much here of my vacation plans, since the majority of it is in my private operational notes. Today or tomorrow I should have the last elements of my vacatio booked. Most of my friends have some good idea of things, where as my mother of course managed to get herself pretty much blacklisted for being an offensive pain. In about ten days though, I should be enjoying a trip to Canada :-).

Perhaps the most fun of all of this planning, was when not only was my best friend shocked that the work-a-holic would be plotting Vacation, but when Miles practically banged his head on the desk after I gave him the details xD.

Only thing left to sort is final packing for my carry-on and rental car. Flight, etc is all booked and ready to go since the start of the month. Travel resouces have consisently given me data in local airport time. My Calendar gives the info in my local home time. And the airline gives Calendar data in UTC. Thus I have things in 3 time zones, that all have checked to be in aggrement. Like wise I expect on top of whatever the airport offers for time pieces, I will have my phone (local home time) and netbook (UTC) with me. Probably my watch will get pressed into use for whatever current local time is.

In short, there is basically no way I can screw up tripply redundant time data :-).

Monday, August 15, 2011

Please, let the mental retardation end!


The day started off with my first alarm going off, and a sinking feeling that if I was smart, I would get up for work at the first alarm rather than the second. Probably ideal, because after a late night I was rather thinking of leaing early and stopping off for dunkin' but alas, it was not to be.


The royal pain bellows in noting that there is some earth shattering discovery, there has been a recall of ground beef; this one in fact. She forgot to charge her tablet last night and her computer boots to slowly, so obviouly it is my problem to discover this impertive information, as my lunch for the day was made with ground beef. No sickness has been reported yet.


My tickets to Canada are rather highly non refundable and 'oli escherichiais rather the sort of thing that would get me rejected at the border, so of course, I went through the problem of running Google. Is it so hard to type two words into a box and press enter? My word, I am genuis! Perhaps leaving my computer running, makes me brillant. Sure enough nothing matches what she bought so in theory, it is pretty safe, plus the reports show it was a totally diffrent kind of packaging then what she buys. Good, sounds safe.


Then my mother's mental retardation caused me to facepalm into a morning headache. She didn't want me to get 'sick' before my vacation, good reason for see the above paragraph. The WHAT THE FUCK!? how ever is that the same ground beef lunch was made from, we have been eating on pretty steadily for nearly two weeks now. If there was any problem it would probably have been noticed by now. To top it off, lunch is leftovers from several days ago. Meaning if there was an actual risk over 0.00000000001% it would be several orders of magatude to late, and I would already be ill. Totally wasted my time, made me ~20 minutes late, and all for something already obviously a non-issue, and we've been in perfect health. Just freaking brillant I tell you, or as my choice of words on the way out were, if there was a problem, her choice of actions would be like telling someone not to cut the red wire right after they've already checked into hell.


On the way out to add insult to injury, she begins ranting that customs have been strict lately and what if my computer gets taken away? I note their only interest in my computer should be that it's the same one I left the US with and that there is nothing illegal on it (does linux count?), which goes for both Canadian and American security. Her useless rant continues towards the direction of border security being omni-potently above the law and able to do just about anything (maybe even murder on the spot?). FUD, FUD, FUD, FUCK OFF RETARD! I am tired of it. I don't FUD. Go fly a kite. I really am tired of this endless stream of bullshit.



Breakfast became a Pepsi—as Coke has less sugar and caffeine. On the upside though, I only had to stop for petrol \o/. Would it be rude to say, why don't I just cut the Fugu myself?

Wednesday, August 10, 2011

This makes me angry

Interesting little cluster of stuff:



  1. Phone power level is critical, standard android message to connect the charger comes up.


  2. SD card unmounted for reasons unknown!


  3. The carriers account app gives me a notification saying
    that I should reboot my phone because it has been 49
    hours past the reccomended frequency of rebooting. My
    last power up was apparently "August 1st blah blah".

    It says that they reccomend everyone reboot their phone
    at least once a week in order to improve/maintain
    performance.



Now why that makes me angry? Why the fuck would I want to reboot my phone? If
you require a reboot for performance reasons, guess what mac? YOU ARE FUCKING
DOING IT WRONG!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!


There is exactly one device that I reboot for performance reasons: my Windows
machine, since games performance tends to suffer after a day or two of uptime.

My OpenBSD server reboots for kernel upgrades and power outages, or if the
weather outside is raining cats, dogs, and zombies, I may decide to
power down as a cheesy form of insurance..

My Linux powered netbook reboots when I decide I that I would d rather power
down then go to hibernate or sleep mode with my current session. My workstation
is usually powered off when I leave work and state is maintained on a
development server nearby.


Guess what. My phone only gets a reboot when one of two things happen:



  • Power is so low that I decide to shutdown rather than get a dead battery.


  • The SD card unmounted.



The former rarely occurs as unlike today, as I rarely forget to keep my charger
handy. Where as the latter happens every now and then, and the Android UI won't
allow me to remount it; the battery is also ontop of the card, making it
impossible to yank and reseat. That happens every couple of months, although
more frequently of late.


Somethings make me angry.

What the Fsck

O.K. I may have just recently cleaned out the mouse wheel of my MX400 at home, for the first time in years: as the dog hair and gunk was making it nearly impossible to scroll.


Today however, I got a new treat at work: the mouse on my desk is so old, there is mold growing out of it!!!


I'm really glad the keyboard is good stuff lol.

Saturday, August 6, 2011

Ramblings on Electronic Books


Of recent, I've been doing a little studying on the issue of ebooks, primarily because I tend to be tighter on shelf space than disk space. For some stuff of interest to me, I must say, the digitial solution is usually cheaper: perhaps up to 40% or less the list price. Although that being said, I usually prefer "Used" books on the cheap to new books at full price, but the nearest decent used bookstore for years has been is Amazon \o/.


Two major retailers of books in general exist that are worth my investment: Amazon (Kindle) and B&N (Nookland). Kobo looks intensely interesting but within minutes of checking their website, I do not trust them with my billing information.


Now I may be a major cheapskate but I don't mind buying what I want, in fact, I prefer it—if it gets me exactly what I want. In the case of the Kindle and Nook stores at least, it is pretty much there. The problem is DRM. You can read it on a PC, a Mac, iOS, Android devices, and their own reader devices.
Well guess what, I prefer a PC but their software doesn't work on mine. My PC's run Linux and BSD based operating systems :-).


This creates a bit of a irk for me: why should I give them my money, if they will restrict what I can do overtly? Generally, I would choose the Kindle store as a matter of taste. The problem is each store's DRM prevents me from using the devices that ***I*** wish to use at my leisure, so it is little better then requiring their hardware. Given the choice of using my cell phone or remoting to a windows or OSX box to read from Linux and BSD, isn't what I call fair enough versus the cost of a real old fashioned book I can lay in bed and read.


Honestly, I am not against DRM in concept, only how it is typically executed. Because if it is much more complex then email + password + auth token = decode and enjoy content, ala setting up Dropbox on a new PC (to access your content). It is not managing my digital rights, it is removing them. IMHO the only practical form of DRM for books and the like: would be the kind where someone is unable to access the material in _any_ form, unless their DNA matches the DNA of the person licensed to access (read) it, and any violation results in automatic punishment; such as content erasure, imprisionment, etc. Even if locked down expicilitly to the ebook reader's hardware, and somehow hardware hacking was prevented from being possible—it would still be a failure: because you could just photo copy the screen the same way as pages in a paper book. So in the end, we end up having to pay the price of assholes trying to outfox assholes \o/.


The subscription model is better: pay x/cycle for such and such content. That is probably closer to what some DRM-folks like in the music indrustry want anyway, making profit off each playback rather than each distribution of content 8-).


It is very strongly worth noting that in general: I am very against dedicated devices like the Kindle or Nook, when you could spend more and get a more general purpose device like an Android tablet or iPad. I'm not willing to buy one of those for myself until after Ice Cream is mainstream, so I really should just buy a darn Kindle 3. It's only like $140 with the 3G option, and I am more applicable to buying a Kindle then dealing with trying to get around the DRM issues.


While it's limited to technical books, I really would consider something like Safari Online Books to be a much better investment but I want more than what it can offer. I'll likely begin evaluating things more closely in the near future, as well as setting up Safari for a trial. Safari has the best techy publishers in my experience.

Tuesday, August 2, 2011

Lessons learned


This is an except from a short convo' about the similarity between programming languages in general.


Me: Most programming languages are pretty much the same, it's just a matter of choosing your headaches
A Friend: well yeh
Me: Lessons learned:
C -> sigh, yet another hash table implementation.
C++ -> error messages should only be written in one of two ways, templates are written in a third.
Java -> please GOD, not again.
C# -> groan, building C/C++ libs is even worse.
Perl -> Yes I know it is unitialized, damn gum it!
JavaScript -> WTF was that mac?
Lisp -> Did someone stick a fork in my eye?
Lua -> off by one errno'
Haskell -> Holy shit my head hurts.
SML -> Cool headfuck but where's the damn batteries?
Shell -> Shame most people SUCK at it...
Cmd -> COBOL just got sexy.
Python -> Can not use contractions.
Ruby -> You lie.
A Friend: you missed php
Me: I respectfully omit PHP as it multiple inherits from several, and adds it's own headaches :-)
A Friend: lol
Me: hehe


That being said, except for the sort order, I would say that Lua probably got the highest marks there lololololololololol.

Cassius is now on GitHub!

While a very important girl was off visiting her grandparents, I resurrected work on Cassius! Thanks to a few nights and occasional Saturday afternoons, the interface is maturing to the point where I can almost use it, so I've decided to put it on GitHub.

Old code never goes away, it just goes back to the compiler.