Archive for the 'default' Category

News of the Week

Posted in default on December 5th, 2011 at 09:00:22

* Water Pump hacking: A water pump in Illinois was alleged to have been hacked and broken by Russian hackers over the past couple weeks by various news sources, including the BBC. The real story? The tech consultant who helps to maintain the pump was, at the time the pump broke, at a conference in Russia — so when the pump broke, he got a call to look into it, and logged into the control system from… you guessed it, Russia. The pump just burnt out, and tying the ‘attack’ to a Russian IP was just because that’s where the consultant happened to be at the time. (Via On The Media’s Cyber Warfare piece)

* In ‘not news’: Teens are generally more aware of and conscious of their privacy than adults, taking care to limit their postings, limit their friend groups, etc. (Via On The Media)

* Heard an interview with the founder of “Is Anyone Up”, probably the most scummy person I have ever had the ‘pleasure’ of listening to on the radio. “I can do whatever I want with photos people send me, because the law protects me”… and because I have no decency. (Is Anyone Up is a ‘porn/revenge’ site, where anyone can submit nude photos of people, and they’ll be posted along with a Facebook link.) I … yeah. This report made me angry enough to want to turn off the radio, because the guy being interviewed clearly had no positive intentions: “This keeps me in beer money and lets me keep throwing parties, why *wouldn’t* I embarrass people this way?” (Via Revenge Porn’s Latest Frontier)

Just a few clips I thought were interesting that I heard this weekend.

Software Fail: Photo Tagging

Posted in default on December 4th, 2011 at 08:37:38

I use Flickr as my primary image hosting. I like the Flickr UI, I like their tagging, I like pretty much everything about it. However, after years of using Flickr, I got sort of tired of always seeing “Photos of You (2)” on Facebook: The fact that there was some indication that there were no pictures of me always kinda peeved me for no sane/logical reason.

So, a couple years back, I wrote some software that let me copy photos from Flickr to Facebook. Over the years, I had been relatively consistent in tagging my photos with the names of people who were in them, so I was able to map tagged photos on Flickr to people tags on Facebook. There were some limitations to this, of course: flickr tags are whole-photo tags, while Facebook tags are a specific spot in an image. To get around this, I just tag the middle of the photo.

Generally speaking, this works relatively well — it’s certainly not perfect, but it works well enough that I haven’t run into serious problems… until last night, when I uploaded a few pictures of Alicia to Facebook.. and realized that because of how the pictures were taken, every picture was centered on her breasts. It’s a bit weird to visit your daughter’s Facebook profile and find that the person posting suggestive pictures of her on Facebook is… you.

I quickly retagged the photos, and now know to be more careful when uploading pictures of females — with an automated selection of tagging, it’s easy to have… unintended consequences when uploading pictures.

Caturday Hacking

Posted in default on December 3rd, 2011 at 22:19:48

Today, at cjb’s for Caturday Hacking: Uploading photos from Grendel’s last week, and pushing my flickr2facebook scripts for copying photosets from Flickr to Facebook to github so that people could theoretically look at it and possibly re-use it. Though I’m not really convinced that’s very likely, given that apparently I’m using a two-generations old facebook API to do the stuff it does. 🙂

Learning things via technology is … weird

Posted in default on November 26th, 2011 at 22:29:58

So, today I was just pondering the fact that I’ve been out of high school for almost 10 years now, and wondering if the school I went to does a 10-year reunion. From a brief search, I stumbled into the Wikipedia page about my high school.

A couple things came to my attention:
– At one point in the history of Wikipedia, I remember actively having a discussion about whether the school was notable enough for its own Wikipedia page. (Specifically, the fact that it was in a couple of non-local news articles for the mold outbreak in 2001 was brought up in discussion). I have no idea where those discussions went — they’re no longer on the talk page — but it’s interesting that the school now has a reasonably extensive Wikipedia page.
– In 2009, apparently “During the fall of 2009, many students came down with Swine Flu and other flus after attending the homecoming dance. The Monday after homecoming weekend, 611 students were sick. By Tuesday, 972 had called in sick.” This is a 2100 person school: that means that almost 1 out of every 2 students came down with a flu of some kind. I can’t really even imagine this. (Admittedly, as Jess points out, ‘Although I can’t imagine 1/2 of all the kids getting the flu, I can imagine half of them wanting to stay home, get high and play legit cash games.’ Though in the town I grew up in, ‘drunk’ seems more likely.)

Nothing really special here, it’s just sort of … a weird feeling, to remember arguing that this school shouldn’t even have a Wikipedia page, and now to see that it has one that’s pretty long.

Why is wireless so hard?

Posted in default on November 20th, 2011 at 21:28:40

So, my N9 wireless hotspot didn’t work for a long time; it just returned a ‘not allowed’ error. Apparently, this ‘feature’ is because the N9 ships to… well, wherever this one happened to come from… with a disabled adhoc mode. The fix, provided by this thread, is trivial: Enable developer mode, open the terminal, and type:

devel-su
echo 1 > /sys/devices/platform/wl1271/allow_adhoc

(Note: ‘echo 1>’ is not the same as “echo 1 >”; oops.)

The password for devel-su on the N9 is apparently ‘rootme’ — simple.

But that just gives me adhoc wifi, and the Acer Iconia… not so happy with that. And unfortunately, unlike the N9, rooting the Iconia is decidedly more difficult.

So, the fix to get working Ad-hoc wireless support on the Iconia is to install a wpa_supplicant from another device that *does* support it. But that requires root. And there is no application out there that provides root for the Iconia running 3.2 — the ‘fix’ is to downgrade to an earlier version, then upgrade to 3.2 by running some different firmware that provides root out of the box.

So, I’d have to downgrade, then install a new firmware — not supported by the manufacturer, and probably losing my netflix access in the process — then install a modified wpa_supplicant which might or might not work. All just to get it so that I can use the wifi provided by my phone on my tablet.

Of course, this isn’t as bad as the Windows Phone, where I can’t even *do* that — there is simply no way to get ad-hoc wireless support on the Windows Phone that I can find, hacked or not. (mmm, closed source.)

Why must everything be so hard?

Livin’ la Vida Linux

Posted in default on November 17th, 2011 at 22:04:45

So, after 7 years of being a mac laptop user, I’m strongly considering switching back to Linux.

On Sunday, the hard drive in my (18 month old) Macbook died. Nothing super-serious, but unlike in the past, replacing the hard drive isn’t a 3-screws operation, so rather than rushing out and getting a new drive, I just waited until work on Monday and grabbed myself a Linux machine.

In using Linux for the past week, there’s relatively little that I miss from OS X. (The biggest drawback may be lack of Netflix; curse my addiction to DRMed streaming media!)

Although I’m on a bit of a beast of a machine — a Dell Precision M2400, hardly the prettiest of Linux machines — I’ve found that overall, Linux has most of the things that I use on a daily basis from OS X — in many cases easier than it would be to get them via OS X. I’d visited the Computer Repairs store far too many to let the computer run on a dawdling pace.

All of my nitpicks come down to minor differences than any switch would have — for example, I miss being able to quickly change between *applications*, instead of just windows of an application; I feel a bit slower on Linux than I did on Mac still, and for some reason my several attempts to install Flash don’t seem to have actually worked. I am missing having Exchange MAPI support in a mail client; with our Nokia mail setup, this means I can’t get my mail from outside the firewall except via webmail (ewww).

But a lot of the things that were problems in the past, just haven’t been issues. Sound and Power seem to work just as well as on OS X. Since I already use VLC, not much difference there. I miss Safari a little bit — not for any particular reason, just in the ‘getting used to things’ sense — but a full screen Firefox… version-whatever-I-Have (apparently, after checking, the answer is ‘6.0’) doesn’t feel particularly different in any significant way.

After 7 years of being on mac, and now switching back to Linux for the past week — I haven’t yet found anything that feels like a huge win for mac, and I have found many small wins for Linux. I expect that in the next couple weeks I’ll make a final decision on whether I want to make the jump and get a long-term computer that’s Linux, but right now, I’m leaning strongly towards “yes.”

I’ll just have to keep my tablet handy for watching Netflix.

Phone Hacking (7 years later)

Posted in default on October 24th, 2011 at 21:09:53

Nearly 7 years ago, I first started hacking software on phones. This blog was started in part to track my interest in topics around mobile hacking, a desire that I’ve never given up on.

Amusingly enough, when I joined Nokia as an employee, I was able to actually find references to some of these early works as being important in the space of the Symbian Python developments. It was kinda cool to see my name in some PowerPoint presentation that had been put together 6 years before by someone I’d never met or even heard of.

But you’ll notice that since then, I’ve had a serious dropping off; there’s been a dearth of development in that space for a lot of years. The reason for this is simple: on the platform that I used the most for many years, development was a pain. Shipping applications to users was not possible, and as time went on, the number of people who even used the same OS or platform as I did was shrinking drastically, due to Nokia’s tiny marketshare in the US.

Up until two weeks ago, I had never owned a non-Nokia phone. Sure, when we were acquired by Nokia, I got an opportunity to use other phones — both to test out our software on them, and to compare how they succeeded and failed — but I never owned anything but a Nokia phone, from summer of 2003 when I got my first 3650, to April of 2010 when MetaCarta was acquired and I still had my N95 (with a 6600 in the middle).

That’s not true anymore, though.

I recently attended a Microsoft Windows Phone developer event, and I’m — almost 7 years later — hacking phones again. While there still isn’t anything quite as easy as Symbian Python — it’s really hard to beat something in a programming language I speak all the time, presenting a beautiful API to the widget sets that the platform makes available with almost no need for platform specific knowledge — the Windows Phone platform combines a strong toolkit, extremely broad set of documentation and examples, and another key thing that I never had in the Symbian world: the ability to get the applications that I write to users.

Nine days ago, just three days after getting Visual Studio installed in my Windows 7 VM, I was able to not only build, but deploy to my phone and upload to the Windows Phone Marketplace — where just a few days later, my app was available for all to download (well, at least everybody on Mango).

Windows Phone development is *fun*. The tools are helpful, intuitive, and a breeze to get started with. The documentation and support community is huge — building on top of one of the things Microsoft does best. And thanks to the developer event, I now own my first ever non-Nokia phone: an LG Quantum, won in a raffle among people who were able to build and demo an app in just a day at the Microsoft developer event.

While nothing can compete with Symbian Python for pure quick-hack ability — at least, nothing I’ve seen yet — the Windows Phone platform provides a great development ecosystem, with a strong community backing, and the ability to quickly and easily get together apps that do things. Once you do — not only to put them on your phone, but you can also get them in a store so everyone else can install them… and that’s just damn cool.

Many thanks to Joe Healy, and the whole MS Events team who were able to put together the Mango Boston event a couple weeks ago. It was pretty awesome to not only be able to learn about Windows Phone — but to be able to *do* Windows Phone development, and really get my hands dirty, and ship an app less than a week after I even got the dev tools installed on my system.

Tablet: The Bad that comes with the Good

Posted in default on September 11th, 2011 at 16:58:28

Of course, in addition to the good — solid OS, and overall positive experience from all sides — there is some bad that comes with the owning of my new tablet.

Lacking Apps

  • No Netflix. I said about 2 months ago that I’d run into my first real pain from DRM — not being able to move files from a broken Wii to a new Wii. This Netflix disaster is another one. Apparently there’s some software issues that prevent this, but the biggest reason that things seem to be stuck is simply because ensuring playback remains DRM-safe is harder than it should be. Netflix support exists on certain Android platforms, and there are a bunch of hacks out there to make it work on the tablet I have, but it’s not currently possible without rooting it.
  • No Hulu. Same as above. Hulu just gives a “No streaming support for your device” message when loading it in the browser, and there’s no App for Android. I’ve really enjoyed the fact that over the past year, more and more of my video watching can be done completely legally, and the lack of support for the tablet is forcing me to back off of that position overnight, which is a shame. (I’m happy to watch adverts, let people track me, even give feedback on how much ads appeal to me — if I can actually get my content. Since I can’t…)
  • No Facebook app? Not really sure what’s up with that, since it doesn’t seem like Facebook would be that hard, but there doesn’t seem to be an official Android Tablet app. I did grab a copy of “Friend Me”, which seems like it’s providing a reasonable replacement.
  • No support for DivX video playback out of the box — but easily solved with a number of other video players on the device, it seems. (Sadly, my personal favorite, VLC, isn’t yet publicly available for Android.

Hardware/Tablet Nits

The Tablet doesn’t seem to support USB mass storage. It does support the “MTP”/Media Transfer Protocol, so I was able to use an app called “XNJB” to copy files over to it, but not being able to use the built in filesystem tools in the OS is pretty unfortunate.

It’s not possible to connect to ad-hoc wireless networks, like those created on mobile devices using software like Joikuspot. It seems like there are (again) some workarounds to this — replacing wpa_supplicant on a rooted device — but nothing that you can do out of the box. (I hate turning ‘toys’ into ‘work’, so I’m trying to avoid rooting if I can.)

No charging, not even trickle charging, over USB. I really think this is unacceptable: even if you can’t increase battery power over USB, there is no reason that you can’t prevent my battery from draining as fast if I’m plugged into USB.

I’m sure I’ll run into more; this is just what I’ve run into so far as I go through. Overall, I’m still 100% happy with the purchase; it is so far looking like it will definitely be worth it for me. But I also recognize that it’s not a perfect tool, and there are improvements I wish could be made.

(As an aside: does anyone have any recommendations for a good Flickr *browsing* application, both my photos and others, on Android Tablets? “Flickr Viewer HD” is … suboptimal in the way it navigates, and browsing contacts photos seems hard to impossible.)

Taking the Tablet Dive

Posted in default on September 11th, 2011 at 16:36:37

(Cross-posted from my LiveJournal.)

Yesterday, I bought myself an Android-based tablet.

I’ve been considering this purchase for a long time. Tablets are one of those things that I have always been wary of, because I’m not as much of a media user as a tablet really targets, I think. However, after a recent flight to Berlin, I realized that I have at least one solid use case for a tablet, in the form of a media player on flights. With that in mind, I quickly moved onto others: showing photos I’d taken to family members, an easy way to get computerized video to the TV, etc.

In addition, it would be a chance to explore Android. I’ve played with a lot of other mobile platforms over the past 18 months, but not Android — and although it’s not quite a phone, the Android tablet experience is still an Android experience.

I’ve been biding my time for a while, while the marketplace kind of leveled out. Handily, my coworkers have done my research for me: over the past 3 months, 3 other people in the office have bought the same Tablet, so I joined the crowd yesterday, and bought an Acer Iconia Tab.

So far, I love it.

Using it makes me feel like I’m in Star Trek, or Minority Report. *whoosh* goes the desktop! *Whoosh* Slicing some fruit!

The application support is obviously much broader than WP7 or Symbian’s; more quick toys, more real tools, more access to third party services that make using the thing easier. The OS really feels clean and relatively solid — I’ve used Android on phones before, but not a recent version, and the tablet experience feels so much ‘cleaner’ than any of the phones I’ve used. In the browser, things like OpenLayers support dragging, pinch-zooming, drawing in the browser, which is awesome. (I should really see if I can dig up whether/when that is happening or not happening in the 2.x series… or maybe 4.x will just fix it for everyone.) The browser really feels nice and relatively solid. The desktop, and widgets, are both nifty and useful.

The Acer was what I picked because it was essentially the same as the Xoom and Galaxy Tab 10.1 in functionality, form factor, etc. — but it was $100 less. I still need to explore sleeve/case for it to protect it from my stupidity, but for now: I have a new shiny toy, and it is Nifty.

Demo: Leaflet/OpenLayers Translator

Posted in default on September 4th, 2011 at 08:06:28

икониFor a long time, I’ve seen complaints that the OpenLayers API is ‘too complicated’ — that there are too many options, that it’s too difficult to configure, etc. I’ve said for a long time that although OpenLayers offers a lot of power, it’s also possible to make things simpler with a relatively thin layer on top of OpenLayers — that the power doesn’t necessary have to compete with simplicity, but that maintaining a simple wrapper at the OpenLayers level is probably not ideal, for a lot of reasons.

I’m obviously not a good target for making a simpler API — I don’t consider OpenLayers difficult to use, so it’s really hard for me to be the one to implement an ‘easier’ to use API! Thankfully, only 3.5 years after I started saying someone should write a simpler API, there appears to be a significant competitor to OpenLayers which is being praised for its ease of use: Leaflet, from Cloudmade.

So, after watching people continually praise the Leaflet API, I thought I’d see what it took to make OpenLayers as easy to use as Leaflet. I started with the Quick Start example, and worked my way down the features of the page until I got to the end.

The result is the ol-leaflet-wrapper quick-start — a substantially similar page, which looks the essentially the same as the Leaflet Quick Start guide (minus popups). Total code to implement: 99 lines.

Now, I’m not saying this is a full-fledged wrapper: in fact, anyone with half a brain would be able to observe that this particular example is missing one big feature, in the form of popups. (In fact, I think this kind of demonstration is one very easy way to make it clear where the OpenLayers *library* is deficient: things that are hard to wrap between one library and another are a clear target for API refactoring and cleanup.) Any deeper look would show that I’ve only minimally wrapped Leaflet, and that a more complete wrapper would still be a significant investment.

However, I do think that it’s possible to make the kinds of changes that people desire most from OpenLayers *without* completely reimplementing the library — and even without a refactoring of the (admittedly bulky) core library; instead, approaching a new API as something built on top of the existing is a way to rapidly prototype a new approach, and integration or improvements can move into the core library as needed.

And if people who like OpenLayers really want a simpler API like Leaflet — well, I’m happy to help develop the Leaflet API wrapper into something more real, to help direct what a suitably friendly API for working with OpenLayers might actually look like.