Posts Tagged ‘Android’

I’ve finally gotten around to paying the horrible price of 25$ for an Android Developer License. I’m working on a presentation program which can be downloaded for free for PC, Mac, and Linux, and download a remote app for your phone. The app is quite simple, with just a few buttons to control the computer program. The trick is that you can connect to your computer both over bluetooth and wifi, such that even if you do not have access to a wifi you can still connect to your phone and look professional. I would estimate that I am about 70% done with the development process, and I have learned quite a lot about Android networking while working on this.

The developer name is BRBcoffee, and users will be able to download the computer program from this site. Sadly I will not make the app available outside of the Google Play store, as I cannot compete with the Goog when it comes to update functionality.

At first I will not be supporting notes in powerpoint presentations. If I do implement it you will be able to click a button on your phone to show the notes for the current slide. I can imagine that a lot of users would want this, but it would definitely make the app less user friendly. The vision is that you won’t need any kind of technical know-how in order to use the app, that it will rely mostly on icons to convey meaning, and as little text as possible.

If I am to develop an app for the iPhone I would have to earn enough to continually pay for an iOS Developer License, as this will cost four times as much(!) and still reach fewer users..

Hello peeps, what’s up? I know right, two blog posts in the same year, what the hell!? Well, it has been documentet on several occasions that I get very productive during exams, I just don’t direct my energy towards the exams themselves. Hell, this whole blog project was started the day before a final exam back in high school. Anyway, you’re probably wondering what the title has to do with this, which is almost nothing, except that exams are closing in, and I’m doing cool shit that I want to blog about.

I’ve had this magnificent tablet that I’m typing on right now for a year, I think, maybe a year and a half, and it’s pretty rockin’. I’m an android power user, if such a thing exists, starting out on the HTC Hero, and staying there long past its expected lifetime, because I refused to spend money I didn’t really have on a new device, opting instead to flash unofficial ROMs from the lovely people over at the xda forums in order to stay with the times and the new features that came with new versions of android. God, I can’t even imagine the pain I’d experience if I had to go back to running Cupcake (android 1.6) on my Hero again, that’d be a nightmare! Anyway, at one point I lost my phone when I was in Oslo, and I had to purchase a new phone. I was pleased with my Hero, but I took it as an opportunity to make an upgrade, going with the Desire Z, which still to this day has the best qwerty keyboard of any phone on the market. That phone was rooted within an hour after I bought it, and it now runs a recent build of Ice Cream Sandwich (android 4.0). The keyboard is essential, but I’ll get back to that later. My point is that I love android. Any loyal readers will know that I love linux, and would install it on myself if I had a usb port and a network connection, and now I have this tablet thingie, with a keyboard dock that I got last christmas, and I’ve been using it on and off as a productivity device after my netbook’s battery died (fun fact, my netbook is also running a recent version of ICS from the android-x86 project). Now, while this gives me a nerdboner, tablets have limitations. The system isn’t really meant to be a replacement for your desktop OS, and working around these limitations at this point can get tiresome, and if you’ve ever opened up a terminal emulator on android, you’ll know that while it is running linux, it’s pretty barebones stuff. BUT! It is linux, and where there’s linux there’s a way.

I read a blog post a few days ago, I’ll link to it if I ever find it in my history, about a man who’d switched his workflow from a macbook to an ipad, and loved it. Now, this poses some problems for a computer engineer, but none that can’t be overcome with relative ease. I say relative, because you do need to be comfortable with the command line interface. Quick, think, what do you have stored in the cloud? I’m going to make an educated guess, and say you have music somewhere, email, probably some shared documents on Google Drive, and pictures in Picasa or Flickr. But that’s just for storage right? Well, yes, but they’re stored on computers, and if you take those fancy schmancy services away, you’re left with exactly what I need in order to work effectively from my tablet, a linux server with none of the hardware and system limitations of my android tablet. The guy who wrote the blog post was working from an ipad, and he was leasing a server (for pretty damn cheap) system called Linode. Now, I’ve looked at this before, but even if it’s cheap I just don’t feel that I can justify the extra monthly purchase. Luckily, a solution has been there for me all along, I just didn’t think about it much: I have access to the unix servers at the University in Stavanger! I got access way back in my freshman year! These are pretty powerful machines, able to handle the workloads of many students and employees simultaneously, and the internet speeds I can enjoy from them are out of this world. When Google told me syncing the android source tree would take an hour, I farted in their general direction, and then the sync was pretty much done. I’ve lost my train of thought, where was I?

Oh, yes, I have access to powerful machines though ssh, the secure shell protocol. All I needed was an android client, and I should be golden. Of course, this wasn’t exactly the case. The one thing people always bring up as a negative aspect of android is that it’s fragmented. As opposed to iGadgets, which are all produced by the same company, android gadgets are produced by a wide spectrum of companies, and they don’t allways see eye to eye when it comes to how to implement things, so you get things like tons of different keyboard layouts. I mentioned that my phone has the best keyboard out there for phones, but that’s just my (and HTCs) opinion. Samsung probably has a different idea, and Motorola a third, which is reflected in the keyboard dock I have. Now, I had downloaded an ssh client called ConnectBot, a great piece of software, except it doesn’t really support hardware keyboards that well, having been designed for a system that deals primarily with on-screen keyboards. It has a few workarounds for adding modifier keys (such as ctrl, alt, shift), but my keyboard actually has these keys, they just aren’t registered by the software! ARGH! There are even some bugs with this in the operating system itself, but the tablet comes with a software keyboard designed by Samsung that allows everything to work great. Except ConnectBot can’t know this, and can’t be designed to work with every single keyboard program for android, because there are, like, a thousand. Really. So I got frustrated, I needed keyboard shortcuts in order to use the programs that make working in the linux cli (command line interface) awesome and effective, but none of them were working! I downloaded experimental versions, I complained in the irc room, no one answered, and I downloaded more experimental versions and other programs. Nothing worked, and I was starting to feel jealous of the iPad guy, I was in a bad mood. And then I had an idea, why don’t I try to change the software keyboard? Ta-fucking-DAAAAA! Works like a charm. Well, alt key interactions don’t work, because this norwegian dock only has the alt-gr key, and I still have to use an experimental tablet version for it to work, but other than that, all is dandy! So, I bet you’re all wondering, but what can you do with it!?

What I can do with it

I can connect to a powerful machine from anywhere in the world!

I can use Gnu screen, a tool that lets me have many terminal windows open at the same time, and switch between them quickly.
Screen is cool for another reason, it keeps all my terminal windows, even when I log out, even if I lose my internet connection, even if I burn my tablet.. Say I’m working on some files, have a blog post open in emacs, and I’m compiling a large project, when my tablet unexpectedly reboots. If I’d have been working locally, that would all most likely be irrevocably lost. Now, I can go make a cup of coffee, run down to the library, open up a portable ssh client, and log into the system again. It’s all there, and hey! The program is done compiling! Screen keeps doing shit while I’m not logged in, and that’s awesome Holy shit that’s a lot of emphasis in one bulletpoint, but Screen is just that good.

I can keep my cool. Serious programmers are likely to have some serious computing power sitting at home, churning away at their programs, and it gets hot, seriously hot. When I’m working from my tablet, it’s not actually doing anything intensive, so while the heavy machinery on campus is running laps around your computer, my battery will last all day. I don’t need more than this single-core ARM processor (over)clocked at 1.4Ghz.

I can goof around. While Screen is making sure that my shit keeps running on campus, I can disconnect and play some smooth games on my tablet. I can’t stress this enough, my tablet is completely unaffected by what the server is doing!

I can never buy a normal computer again. I will though, I need to play Diablo III.

I can compile the linux kernel in less time than it takes me to go to the store and buy donuts.

I can check the progress on the linux kernel compilation from my phone while I’m going to the store! Yes, my phone can connect via ssh too, android is android, and the keyboard on the DZ is sweet enough that if the compile failed, I can change a few small things around and try again before the cashier can offer me my receipt.

I can fly! Well, that’s not true, but I can make a server farm output this:

I can do more, but this blog post is already much too long. See ya on the other side!

This is not a “woohoo it’s goddamn christmas time”-entry. But to get it out of the way, woohoo it’s goddamn christmas time!

Two things. First of all: my phone (HTC Incredible S) just got an update, so now it has HTC sense 3.0. I find this awesome. I also just discovered that my phone now has an internet passthrough-function, meaning I can connect it to my computers internet connection via USB. Being out in the woods where my father lives, and him not having a wireless router (only cable, friggin stoneage), this is nothing short of brilliant.

Also, I’ve started playing Star Wars: The Old Republic. I pre-ordered and have been playing for 5 days now, and to sum the game up: it is goddamn awesome. I am playing as a Sith Juggernaut (badass tanking warrior, bitches), and the personal story of the game is just crazy-good. I am loving every second of it. And having just earned the title of Sith Lord and having my own apprentice is also badass. Yeah!

So the Ice Cream Sandwich source code was released a while ago now, and I’ve been eagerly awaiting a port for my Desire Z, or Vision, or G2, or whatchamacall it around the world. By eagerly I of course mean I’ve been constantly refreshing the relevant threads on xda-developers, looking at gibberish git commits, and hex editing keyboardfiles in order to try and help out in any way I can, but still the fickle wench eludes me! I shall now proceed to pull all my hair out of my scalp.

So, why do I so desperately crave this sammich thing? Well, today I’m starting a new tradition: lists: by Bjørn Snoen. Props to any and all who gets the reference.

Why my phone needs a sandwich: a list by Bjørn Snoen

I’m a flash addict. It’s a real medical condition, usually contracted by visiting the xda forums, and once you start flashing, you just can’t stop. The thrill of flashing a new rom, hoping it won’t fail, and that it won’t seriously harm your device, is amazing. Possibly even more exhilarating than crack, but experts disagree. Sadly, or fortunately, few experts exist, as few flash junkies are crack heads, so it’s more like crack experts disagreeing with flash experts.

Remember when Honeycomb came out, and android tablets started getting awesome? It’s like that, but for phones. The UI changes are fantastic, from the subtle tweak of scroll bars, to the less subtle tweak done to the graphics of on/off switches, to the radical, and much anticipated, implementation of hardware acceleration in the launcher. Yeah, it’s friggin epic. At least it looks like it on the devices that, you know, have it.

Tron. That’s right, motherfucking Tron. This entire release looks like something from Tron: Legacy! I know the previous point was kind of about the UI, but this element deserves a point of it’s own. It’s all shades of blue, teal, and black, it has glowy neon edges where it seems appropriate, and it’s matte where it needs to be. This is one geeked out ice cream sandwich, and I love me some geekery. It’s a powerful kind of love. A little inappropriate, actually.

Okay, don’t get mad now, I lied. There isn’t anything else in specific that I’m looking forward to, however from reading about it I’m sure there are a bunch of kick-ass elements I won’t be expecting.

So today a supposedly “working” port of ICS was posted on the forums, so naturally I downloaded it immediately. Sadly, I’d just ordered pizza, and I had to put off flashing it until it arrived so that the delivery boy could reach me… and he was delayed! Agony! But the hour finally arrived when I could flash this magic ROM, and taste this sandwich for myself! And nothing works.

Well, some things worked, but I couldn’t use the ROM, nope, not at all. The software keyboard wasn’t reachable, because the ROM suffered from the same bug as all other ICS efforts for the old Z, it thinks the hardware keyboard is always out, so the software keyboard never pops up. You’d think that was no problem, the Z has a hardware keyboard, so just use that! Except for the fact that it isn’t working! Only a precious few of the symbol keys work at all, even if they do input the wrong symbol. Sadly this is nowhere near sufficient for inputting my passwords anywhere. And trust me, I tried vnc, I even tried a hacky jnlp script, none of it worked, input is fucked up beyond repair in this ROM. If this is a working ROM, I’d hate to see the broken one.

So I restored my backup after butting my head against this ROM for about an hour. Always remember to backup your data kids! At least I’m getting one good thing out of all of this: I’m getting very motivated to learn about kernel and Android hacking, so in a while you might see some ROMs with BRBcoffee branding popping up on a device near you! Or maybe not, but you never know!

And now for something completely different

With the birth of a new tradition, I’ve decided to change an old one. The song of the blog must die… Yes, I know you’ve loved it very much, but from the ashes shall arise a new and better tradition! Introducing the album of the blog! I know, it’s totally rad. I don’t even know why I didn’t go with album of the blog to begin with, I always paid more attention to albums as entities than songs anyway, and it’s not like I write an entire blogpost while only listening to a single song, I may be productive, but I’m not a robot. Actually… no, Robo-admin will be another post, I don’t need this post turning into a flying circus! Now, without further ado, or bad html, I give you the album!

I know I promised to review my new phone and netbook to ya’ll, but actually this is my first oportunity to sit down, relax with ice cold, nasty coffee, a bad radio show, and the smell of new car, to review at least one of them! (Yes, I’m at work, and there is absolutely nothing to do… And if you didn’t read the title, this entry will be about the HTC Desire Z!) It wont be to long or complicated, so dont worry!

So, what do I have to tell you about this phone? Well, to be honest I’m not very impressed, yet! But again, I love the phone, it’s android that’s bothering me the most… Frankly, I don’t know which version I’ve got, but it sure as hell is buggy and slow! A lot of the programs and apps for the Z is awesome, but yet again even more buggy than the OS itself. Sure I were to expect this, but not to this scale. Lately the whole thing has just been turning itself off once a problem occours, or locking everything up, so that I can’t do shieet. Also Android has a bad file system and using the menues are somewhat rocket science. While I play scientist, not to many programs are running, and the only program allways enabled is the 3G data transfer service, still Ive got to charge this beast every 10th hour. Sure I should expect. This from technology as new as this, and even so I’m happy with my new baby!

So i told you things are badly organized, yes? Exactly! Every single freaking program is just put into the main menu, and there aren’t possibilities for sub menues, as far as I’ve figured out. The good thing about it is that 20 seconds of insane scrolling gives you a good overview over what’s installed. Menues brings me to contacts, don’t ask me why, but for me this seemed logic… Contacts, well… WTF? Why the hell would they mess up this critical and important part of a phone? Every single contact gets doubled, tripled, fripled or worse, based on your SIM contacts, phone contacts, facebook contacts, twitter contacts, etc…
so every single freaking time I want to find a contact, i got to scroll through all the dupliicates. Fortunatly, you can link duplicates, sadly this demands more memory from the phone, and every time you use the “phone feature” it wants to know which of the one billion numbers you want to call. This is the only thing bugging me enough to want to chrush my phone against a telephone pole! Still, that would be a waste of the 4100NOK I’ve spent on this thing. Lets just pray this will get better in close future.

Now, maybe you’ll want to know why I still love my phone? Hah! Thats what I thought! You’re dying to read further in this crapppy entry… So, the main thing I love about this baby is the QWERTY flip out keyboard, oh my god how I love it. If It haden’t been there, I would’ve never written this from my phone. Touch keyboards are just annoying, and my chubby fingers don’t work well with’em. Second is the variety of awesome apps, and the bright an nice screen it’s got makes the apps and everything I do even better. Right now, I’m using the Word Press app to write and post this. Gebious little app. The possibility to make my own WIFI and connct my laptop to is great, also using WIFI in general, but that is old news on most cellphones nowadays. Headphone jack is nice, and an USB-charger is genious, saves me at work, since I’ve got an USB plug in the taxi.

All in all, this is a great mobile device with clear sound, good camera and speakers, bright screen with a good resolution, many posibilities, QWERTY and lots of other stuff. Downsides with the battery usage, contact organizing and menues. Still, in 2-3 months this will most likely be improved in the upcoming android updates. If the contacts doesn’t get properly organized by then, I will kick some developers arse. I would not reccomend it to novice users, but rather to those with more than a basic understanding of technology, and with interest or knowledge to program and fix some bugs themselves. Be prepared Bjørn! Don’t get your hopes up, but you’re about to get into a new and exciting era of smartphones, though I suspect you’ve got a feeling on android from your old tattoo.

Finally I got a customer! So this will be the end.
Upcoming: Samsung Galaxy Netpad review.