Freitag, 20. Januar 2012

Javascript compilation and obfuscation

As a C/C++ guy I'm used to some sort of type safety which Javascript unfortunately can't do out-of-the-box. To start a small new project of mine I was evaluating several mobile development frameworks (see my former post(s)) along with Javascript tools.

What most people (at least at the time of writing) do say is: Forget to try to obfuscate, hide and/or pseudo-encrypt your hardly-written Javascript code. If there's someone who wants to steal your code, then there will be way to do it, period.

But what's more about RTTI or type-safety in general? From former Javascript experiments I know that it's much more likely that some part of an application breaks because some object or variable is used in a different way it was meant to be.

To make it short: I still don't have the definite answer for it, but I found the Closure Compiler so far and it makes a rather good impression to me (besides some critism found on stackoverflow and others).

I really would love to get Javascript compiled (yes, I know, there's Google's Dart coming up!) ...maybe some Lint replacement(s) will help me out? Searching further ...

Samstag, 14. Januar 2012

Mobile (Web) Frameworks in 2012

As I want to do some more development in the mobility sector (that is, for Android in the first place, iPhone comes later, maybe ...) I tried to get an overview of the current status of mobile (web) frameworks in beginning of 2012.

Well, as it sounds that easy -- it really isn't. This seems to be a hot topic all over the place since these frameworks all try (with diferent techniques though) to provide a common interface (API for the techies) to get your application on as much platforms as possible.

This of course also has its drawbacks: While you then can develop your application in pure HTML5 / CSS using regular JavaScript (plus jQuery etc) you cannot access native device feature like the camera or the accelerometer.

If you go for the hybrid approach, that is using a framework which transforms your web application into a native application on Android or iOS, then you finally have access to (some) of the device specific features.

In general (at least for me) it was very hard to get a comprehensive overview of all these frameworks, toolkits and so on since it seems that every day there will be a new one which declares itself being "the ultimate solution (tm)".

Personally I'll give PhoneGap a try which does the hybrid approach mentioned above. With that there are toolkits like Sencha Touch, The M Project or jQuery Mobile which can be used to build your actual application. This especially is nice if you want to provde regular desktop support (for Firefox, Chrome etc) using some node.js server as well. Another nice feature about PhoneGap is that you can write native plugins (for Android that would be in using Java using the Android SDK) which then can be called from the app's JavaScript code. MIT license, nice.

There's another framework called Appcelerator Titanium which does similar things, also for the old-school desktops.

Also consider reading some nice blog articles like Natives are restless, Developers guide to mobile frameworks or several articles over at interfacethis.com.

Oh, and when you need a HTML5 boilerplate, there's a nice template generator over at initializr.com, or, if you need a more mobile approach, take a look at html5boilerplate.com/mobile.

Other (maybe not so well-known) frameworks worth checking out:
http://www.winktoolkit.org/
http://www.knockoutjs.com
http://angularjs.org/
http://www.nimblekit.com/ (iPhone only)



Mittwoch, 11. Januar 2012

Synology DSM 4.0 with Synology Cloud Service

At CES 2012 Synology just announced a new release of their device firmware DSM (DiskStation Manager) in version 4.0.

Besides other improvements one really got my attention: Synology Cloud Service.

While I'm also a big fan of ZFS, btrfs, FreeNAS, OpenMediaVault (OMV) I really like Synology's device lineup with their easy-to-use software. Nothing really to setup, just unpack, configure a bit and you're ready to go.

Synology wants to release a 4.0 beta pretty soon, so I'll follow this one pretty closely ... DS712+ here I come ...

Thoughts: The dilemma of device-bound data

Recently the power supply of my main PC (that is, a regular PC with an old dual-core Intel) just died without a sign of trouble beforehand.

Since I still don't have a NAS and my data on this PC is spread over several hard disks inside I didn't have access to this data while my PC was out of order.
Especially using (and looking up) some E-Mails I really needed really was annoying since I had to use my external backup drive (1TB USB 3.0) on an laptop to get to those files. Being cautious while loading the backed up Thunderbird profile on that latop from my backup drive is necessary because I still do have some good old POP3-style accounts. Now, downloading data from these accounts while running a (temporary) backup profile would be very bad because all this data then would be lost or at least difficult to merge with my "real" profile later.

As more and more people move their data into clouds, on private servers or NASes here's my personal list of items I really should think about becoming an ubiquity:

- Old-style POP3 accounts; only use fat clients (e.g. Thunderbird) for IMAP
- Let retrieve IMAP accounts those old POP3 accounts (hosted by third parties)
- Personal data like pictures, documents, encrypted stuff
- Business data

As I already use a Dropbox alternative for some daily-use and small data I really would like to have a self-hosted cloud solution where I'm finally not bound to any device anymore. Even these two days where I wasn't able to use my main PC I recognized pretty fast - regardless of the backup I had - how much (important) data still is bound to it.

What do you think? Suggestions? How to you manage your daily data-life with multiple devices?

The Page Turner


Mittwoch, 4. Januar 2012

More backup: BUP

A pretty new project is BUP which is using GIT as a base and has some very promising features, as announced at the recent C8C3 in Berlin, Germany.

But be warned: It's far from being complete or even stable (even if they already do testcases and so on), definitly worth a look (later):

https://github.com/apenwarr/bup

Dienstag, 3. Januar 2012

Dubstep Face