|
Monochrome Mentality
Everything really is black and white... |
||
MainSearch |
This SiteMy server crashed last month due to hardware failures and I lost about 3 months of my site, including many pictures, user comments, blog articles and such. I decided then to redo my site because it pissed me off due to limitations, and since nobody reads my blog, I didn't think people would care. I was wrong twice. Firstly, it appears that people do, in fact read my blog. It's syndicated in several places, linked to by some major electronics sites, scattered throughout the blogosphere. Not only that, but when I posed my hiatus-for-a-rebuild notice, I got several e-mails from people giving me encouragement to keep blogging, tips for restoring my site and so on. In no specific order, I'd like to extend thanks to Manuel who simply wasn't satisfied with silence, asked questions and made sure it got out to the world. He also encouraged me to blog about building a Django blog, which I may do, or may not do, but it's something that might add more content here, and I always welcome relevant suggestions for that. :) Thank you Philip, who saw that content was missing and let me know how I might find it again. Afterwards, he and I had a conversation about Openmoko's lackluster website and his contacting of Sean Moss-Pultz. Good to know people are taking steps to get action, rather than simply complaining. Jeff, who wrote with apologies for unsolicited e-mail honored me. I'm just a regular guy with a blog and my e-mail address is public. I write about what I love, mainly technology (Free Software in specific), liberty and freedom. I'm always happy to answer questions or just shoot the shit, my e-mail is listed in the “Contact Me” link on the side of my site and I do always welcome e-mail. Hell, it was the e-mail I received that really motivated me to keep my site active (the increase in traffic, and wanting to keep that doesn't hurt though...), so if you like my site let me know, it'll keep me doing it. Thank you Milos, who alerted me that a link to one of my most popular articles was broken and allowed me to fix it. I really like keeping traffic to my site flowing, I do appreciate it. Thank you David, who took the site recovery bit a step further and actually scoured Google Cache for some of my missing articles, then e-mailed them to me to ensure it wasn't lost. Er Lern, thank you for being the first to contact me with suggestions after the site failure. I think I got that e-mail literally in less than 24 hours which was amazingly fast considering that I assumed nobody read the site. Thank you to everyone else who e-mailed and I missed, I'm sure I've missed several. But more than just for sending me e-mail, thank everyone who reads this. It makes me feel awesome knowing that people out there are passionate about the same things I am. It's also good because I see the world in a way that a lot of people don't, and it's a viewpoint that many people aren't used to hearing, so knowing that the messages are getting out makes me feel as if I'm actually accomplishing things. Thank you all, truly.
Kevin Dean | General, Rants, Blogosphere, Communities, Advocacy, This Site | 18 July, 6:17pm
| 3 comments
I planned to stop blogging for a while, intent to rebuild my site as I wanted it using Django. I have found that learning a new programming language and toolkit forces me to adjust my entire coding paradigm. In short, it's not something I've adjusting to quickly. I'm also quietly wondering if I really care about learning Python at all as I've lately been becoming more and more frustrated with computers in general. Anyway, the world doesn't stop moving just because I stop blogging, and the encroachments upon liberty keep happening, so I feel as if the call of duty is sounding over and over and I'm ignoring it, so... I'm back. I'm going to stick with Jaws for a bit longer, chugging out posts in OpenOffice Writer and pasting them in when I'm done. Really, I think I'd be doing that with Django anyway, since it didn't include spell check. :) Jaws 0.80 is in second beta, so perhaps that will fix some of my gripes, and since I actually know PHP, perhaps I could expand Jaws out somewhat, but that's neither here nor now.
Kevin Dean | General, Blogosphere, Communities, Advocacy, This Site | 18 July, 5:38pm
| Comment on this
Just a quick update. On Friday, Being my personal site, I hadn't been making backups regularly so I lost about 3 months worth of stuff, including the Freerunner review and the Photo tour of the ASU. I decided at that point that my website sucks. :) I currently use Jaws CMS which is decently good but not great. The reason I chose to use it, though, was because I like pictures and all of the other blogs suck at managing pictures the way I want them – taggable and on my server. Flickr is probably the closest, but I didn't want to be limited to their storage space, service changes and stuff. Jaws lets me put images in multiple albums without duplicating the images, so I used it. Unfortunately, the AJAX in the admin interface causes conflicts and sometimes I have to reload a page. The search system suck badly, sometimes matching falsely and not displaying matches. But the ugliest part, frankly, is the RSS feed. When I'm editing an article, it auto-saves to draft mode, but for some stupid reason, it actually posts to the RSS feed, so if my article is long (and unless this is your first visit to my site, you know I post long posts often. I actually meant “quick update” and I'm on 250 words.) it actually syndicates a half finished, often broken, blog post which may or may not be updated later. Because of this, I'm actually writing this blog post in OpenOffice.org Writer which I'll cut and paste into the CMS. Jaws CMS does a remarkably poor job in all of helping me manage my content so I'm ditching it. I've been trying to teach myself Python, but at work I deal primarily with PHP so I can't really sit down and just hack. I decided to take this opportunity (the drive failure, if you've already forgotten) to force myself to resolve two issues – my site that sucks and my laziness preventing me from exploring Python. I've decided to try, at the least, to redo my site using Python, and more specifically, using the Django framework which Debian actually packages. :) This means that my normal few-times per week content won't be posted even though there's some infringement of liberty or some advance in Openmoko's progress or something else worth chatting about. Frankly, I'm lazy, and the less content I need to transfer, the happier I am. So this may be my last blog post for “a while” as I learn Django and ask questions and devote my spare time to that for a bit. In the mean time, this site will remain up, with some broken articles. :)
Kevin Dean | General, Rants, Libre, Blogosphere, Communities, OpenMoko, GNU, Linux, BSD, Advocacy, This Site | 25 June, 10:16pm
| 3 comments
Just a small blurb. An IRC friend of mine today sent in a friend because I frequently talk about the message of liberty. It's kind of awkward, in one sense, because I keep wondering why people go "I've got a friend who is pro-liberty, you should talk to him!". I find it questionable because my friend is ALSO pro-liberty and I wonder if it's simply that he doesn't have the same sort of support network as me. I currently live in Maryland, a place where liberty is seldom brought up and even more infrequently the cause of action. I, however, have been to New Hampshire to visit the Keene area activists because I am a Porcupine and will be moving to New Hampshire as part of the Free State Project. I know there is a functional, rational and active group of people who feel so strongly about freedom that they're comfortable tossing the ideas out there. So I will begin putting up plugs (what I call advertisements for purposes other than making money) on my site, hopefully in a tasteful manner. I began by putting up a banner for Free Talk Live, a podcast I listen to every day because it is 100% pro-freedom. Ian and Mark, the regular co-hosts are both among the Keene area activists I've met and they're great people who both moved from Florida as part of the Free State Project. They're syndicated on over thirty radio stations across the USA and there's one station in Tobago that picks them up. They're also continually rated #1 podcast in the political/cultural section on a respected podcast ranking site. Everything on their site is free, you can download their podcast 6 days a week totally free of charge. It's one of the many ways I manage to stay hopeful throughout my day and I thought I should pass that on.
Kevin Dean | General, Libre, Blogosphere, Communities, Advocacy, This Site | 13 June, 11:38pm
| Comment on this
On January 2nd, I purchased a Neo1973 Base from direct.openmoko.com. My first interaction with FIC, the company that manufactures the Neo, was that of excitement. They have a decently beautiful site that highlights exactly why one would want the Neo – freedom, hackability, being on the cutting edge and having a sexy looking device. I felt no qualms at all with inputting my credit card number and shipping info. Immediately I got a confirmation via e-mail and everything was good. As I waited excitedly the next day, checking my e-mail every few minutes to see if the confirmation had arrived (did I mention I was excited?) I began to get a bit annoyed by the end of the day. I then checked out the OpenMoko Wiki and found some information regarding the shipping procedure. I found there two things of interest: Firstly, the price listed on direct.openmoko.com is an estimate. FIC is based in Taiwan, not the USA, so the USD amount I saw was the “target” - they would actually charge my debit card in New Taiwan Dollars in an amount equal to the current exchange rate. The second thing I learned was that order processing took 3 to 5 days. Okay, “fine” I told myself. I could restrain my excitement. It wasn't until January 8th my debit card was actually charged and I received confirmation that my order was processing. Perhaps I'm spoiled by NewEgg's wonderful shipping procedure but I consider a 6 day turn-around to be horrific. In addition to being a software libre geek, I am also a home brewer. In home brewing I deal with specialty supply shops to purchase my hops, grains and yeast. Some of these shops are run by retired military vets with little internet experience and some are decently skilled in the internet but in any case they can still manage to have my order packaged, shipped and at my door in a week – I fully expect a company called FIC (First International Computer) to have their order system automated enough to process orders efficiently. I console myself with the notion that they've got a room full of hackers plugging away to get the GTA02 “mass market ready” who simply can't be bothered to check e-mail and fill out UPS invoices. Later that night I got confirmation that my package had shipped via UPS and included was a tracking number. I excitedly (again, did I mention how excited I was?) plugged the tracking number in to UPS's site and found that my package would be delivered on... the 14th! Have I really been THAT spoiled by NewEgg? I had debated over getting “expedited” shipping on one of many forms, but I decided against it - “standard” UPS shipping was decently fast, I reasoned. I guess not – this package was going to take almost a week more to get to me from California (for the record, NewEgg ships from Whittier, CA most of the time too). It seems NewEgg's “standard” shipping is NOT UPS's “standard” - lesson learned. The weekend wait for the Neo was pretty easy, I managed to brew a beer on Sunday using my new Barley Crusher, so time went by rather quickly. Sunday night I decided that I was going to drive my wife to work, and rather than go to work myself immediately, I would drive BACK home and await the Neo's arrival. Luckily, my job offers enough flexibility that I'm able to do that without much issue. At 11:09 am, my Neo arrived. My decision to return home was a good one – FIC ordered a signature before delivery. I normally HATE when companies do that (With 6 hour long delivery windows I can't afford to take a day off work to sign for a package. I work 55 miles from home so picking up my package from a UPS facility ALSO requires I miss work. Sign for packages = bad). In this case, however, I was a bit happy, since it was a rather expensive shipment – and I was pretty sure insurance wasn't part of UPS's “standard” shipping either. ![]() Above is the box that arrived at my door. It was a pretty plain box, no fancy buzzers or bells (I truly didn't expect them but I have to make this dramatic – did I mentioned I was EXCITED?) and attached to the top was a packaging slip. I opened the box with my keys to find that there were blocks of very thick black foam covering packing peanuts. Buried beneath the peanuts was a bubble-wrap packed white box. This foam was very thick and in general the whole thing was well packed. ![]() Inside the bubble wrap was a clamshell box that I thought was inventive. My wife has been in the printing industry since high-school so printing and packaging are her passions, I suppose it's rubbed off on me. ![]() Once opened the clamshell splits again (once each way) to reveal the “goodies” that I've been so long awaiting. ![]() I won't go over every piece in the box but every piece has been photographed by me, if you're interested in seeing those images please check out the OpenMoko album of my image gallery. The Neo handset itself was enshrined in the familiar anti-static anti-UV bags but it was the first time I'd personally seen self-adhesive anti-static bag – it was kind of neat. ![]() All of the contents of the clamshell unpacked. There's the carrying case, lanyard, headset, spare ear buds, USB cable, stylus, battery, memory card and Neo handset. While photographing the handset, I noticed that the screen itself seemed very reflective and I often saw myself in my own shots. This worried me, since I figured if it reflected my image it would also have horrible issues with glare when in normal use. ![]() Eager to “get on with it” I held down the POWER button for about 4 seconds and the phone gave the smallest of shudders as the vibrator pulsed for a moment and the screen flickered to life. For anyone who has read articles about OpenMoko on the Neo you've heard “the screen is nice” but it's impossible to take a picture that shows exactly how sharp this screen is. When the backlight came on I was greeted with a black and orange splash screen which quickly gave way to a “typical” Linux boot up – Tux at top and white text on a black background. As small as the text was it was still remarkably clear – just so small it's hard to read. ![]() The Wiki explains this very clearly, so I wasn't alarmed by it, but the very first boot ends in a kernel panic. The “simple” answer is that there's no software other than the Linux kernel and the boot loader (u-boot) itself, so it fails to load anything. End users won't have this happen to them (OpenMoko will be DOA if it's required) but developers will have to flash their own kernel, root file system (rootfs) and (potentially) u-boot image. At this point, I realized I was “pushing it” by not going to work, so I packed up my Neo and accessories, uploaded my pictures to my wife's Ubuntu system, crashed it and then went over to my Debian system to burn my newly taken Moko images to CD and then went to work. At work I began my “flashing” after reading up on the Wiki. What was slightly confusing for me was the out-of-date nature of the Wiki. While it's pretty clear once you understand some terminology for someone “new” it can be quite scary – the term “bricking your device” is used enough to scare the hell out of me and I'm fairly comfortable tinkering with “internals”. A quick post to #openmoko on Freenode led me to a how to find daily build images page which kicked me over to buildhost. The recommendation I got was pretty much “Use the newest images” - this makes a TON of sense since the software is rapidly changing. Flashing the Neo itself was a trivial task and I suppose it will get even easier once the OpenMoko build tools become packaged for popular distros like Debian and Ubuntu. In my case, it meant plugging in the USB cable to my computer and my Neo, downloading dfu-util and compiling it – the whole process took about 30 second so it's a FAST compile as well as simple. I then downloaded the uImage file and the rootfs image for the GTA01 (about 48 MB combined), launched u-boot (hold AUX, power the Neo on) and issued one command to flash the kernel to the Neo. The second command flashed the rootfs to the Neo – a slightly longer process that took about 13 minutes. The downside to this flash is that once the phone enters u-Boot mode it will power down after 60 seconds of inactivity and it doesn't consider USB transfer to be “activity”. This means every 45 seconds or so I pressed the AUX button to keep things “alive”. I'm sure I looked stupid to my office mate, but oh well. (For the record, there IS a solution for this but I was excited and just wanted the thing to work). Once the flashing was complete I restarted the Neo and it booted without problems (no kernel panic!). This time, once the splash screen was done I was greeted with a whimsical sounding chime (audio works!) and the phone proceeded to load my home page. At this point I hadn't charged the device or installed the SIM or microSD cards, so I powered down, installed them and powered back up. The Neo doesn't do a “quick charge” unless the device is powered on so unless it's totally dead, it needs to be on to charge. I worked on “work stuff” for a few hours before turning my attention back to my Neo. This time I decided I'd play with GSM and attempt to make a phone call. This entire time the top toolbar was saying “Registering...” which alarmed me – was my SIM card incompatible? There is currently an open bug pertaining to 3G SIM cards (mainly AT&T ones, but possibly others) and I was afraid mine was affected. I pulled opened the GSM quick menu (at the top of the screen it looks like a Triforce-on-a-stick) and clicked “Auto-register with network” which I assumed it would have already done. The phone sat there, still displaying “Registering” while I went into the applications menu and fired up a terminal (ain't it sweet? CLI on my phone!). To see what was happening, I issues a “dmesg” and almost immediately I got a popup (it looks very “Gnome”-like) indicating I was connected to my T-Mobile network. At this point, I opened up the dialer and punched in what I thought was my phone number (to check my voice mail ) and was a bit shocked... Someone answered! It happened to be my wife (my phone number ends in 7446, hers 7445) and we both chuckled. I noticed two things about the call. Firstly, I can very much hear “air” through the ear piece. It is my understanding that as of this moment there's no noise-canceling software of the phone so the microphone picks up (and sends) everything. The second was that even without noise canceling software, the call quality was comparable to a “regular” phone – at least in the mid-range phones I'm used to dealing with. On the ride home from work, I excitedly showed my wife the Neo. She's super supportive of me and my obsessions with brewing, computers and freedom, so she was poking at it inquisitively rather than finding “broken” things to criticize like some people would (especially after what I paid for it). While I had focused on the phone, the interface and the hardware the first thing she did was find the games menu. I have to hand it to the interface designers on this one – either I've been clueless or they did their research. While I have to poke and prod to find a “rhythm” to menus my wife was able to find and launch some games so fast I was amazed – and even remarked on it. She played several games like the Mastermind clone, a game called “Maps” which seems like fun where you fill in oddly-shaped tiles so that no two touching tiles are the same color. Her initial impressions were very good, actually. Her complaint was that some of the games are horribly optimized for the device. Sudoku, for example, is almost useless without the stylus (Input options are 0-9, a keypad would work MUCH better than a matchbox keyboard). Once home I hit my computer with the Neo and began “playing” with it. I pulled up my address book from my old phone and began inputting my contacts and phone numbers. This is where I found the most “buggy” functionality. I then moved to trying to send an SMS message to a friend which didn't fail, but didn't work either. Having those two things fail (after some prodding, too) I decided to see what this thing could do in terms of media. I transfered a song, via netcat, to the memory card and launched the Media Player app. Playing the song failed at first, so I rebooted the device (certainly not needed, like any GNU/Linux system I could have restarted the sound system or investigated WHY it wasn't playing but this was a learning exercise more than a troubleshooting one) and relaunched the media player, this time “Turn On, Switch Off” played from my Neo. I attached the headphones and the sound switched with a 1 second delay. The headphones crackle. I believe this is a manufacturing issue and NOT a software one, it sounds as if my cord is frayed and introducing signal-noise. I recall reading another complaint of this. I very much plan on replacing the headphones this week for that reason but since it doesn't “crackle” unless I move I can use them for learning over the next few days. Applications began crashing at that point and my brain's “troubleshooting” mode kicked in. About a minute later I found that I was using 100% disk space – somehow my microSD card WASN'T detected or mounted and I'd copied a 13 MB file to a space-limited filesystem. Oops. I deleted my music file and proceeded to set up USB networking (well documented in the Wiki). I immediately installed nano, my text editor of choice, and then SSHed into the Neo from my Debian system. This is much easier than typing on the on screen keyboard, but mainly because it's more familiar. Then, using the Neo handset I launched the web browser to see how well it worked. ![]() The browser is WebKit based which is pretty cool. It renders my site pretty well and renders MOST sites pretty well. Some sites, however, look a little smooshed. In time people will be forced to design sites for "the mobile web" as well - and standards compliance makes this easier - but for the most part, the internet will still be usable on the Neo's browser. I haven't figured out how to do it yet but tilting the phone into landcape mode may help a lot. This should be done automatically on the Freerunner, kind of like the iPhone does, with a simple tilt of the device. The GTA01, however, doesn't have accelerometers so switching orientation is a manual process. Over all, my first day with my Neo was fantastic. The phone works at least as good as my old Motorola RAZR did after a year and it's powered by Free Software – it's already a winner. Over time, this system will improve and I plan on watching it while it does, sticking my hand in where possible. The excitement hasn't left me yet, but my desire to “make it my own” is growing now and I've already found some “issues” I can investigate. :) I'll have plenty of happy hacking ahead of me. During this time, I'll review OpenMoko software more completely, breaking down individual applications at a time. I'll hopefully be able to write some "official" documentation as well as fix simple things in the source as my skill with programming improves (my second reason for buying the Neo). Forever Dean has been lost in limbo for almost a year. I've been hosting on my home DSL account, bouncing between CMS systems and writing tons of code which has been scrapped. This site should be active again, with reviews, tutorials, interesting issues arising in the world of Free Software and just about anything else I feel like spewing out. |
|