Tuesday, October 30, 2012

Thoughts: Android 4.2 and Google's Nexus lineup

After having to cancel their Android event on Monday due to the hurricane that currently sweeps across New York, Google almost quietly announced what they already wanted to show us on Monday: the "final" lineup of Nexus devices as well as a new version of Android Jelly Bean.

Google finally did it. They now offer (almost) every size possible as Android devices. The only thing that's missing is a phablet (half tablet, half phone).
Of course there's the "old" Google Nexus 7, a 7' tablet which is now available with 32GB of storage but also comes with HSPA+ mobile data. This is really great because tablets are slowly replacing laptops for people who want to read, surf the world wide web and update their social networks (because they don't know those life in the www ;) and possibly play games. I unfortunately don't own a Nexus 7 but now this gadget is finally complete!
Read more »

Labels: , , , , , , , , , , , , , ,

Sunday, October 28, 2012

Start a Java Virtual Machine on OS X via Java's Invocation API (and using a Java GUI)

Have you ever wanted to start a Java Virtual Machine (JVM) using C/C++ on OS X and were not able to? No? Maybe you wanted to start a Java GUI class using C/C++? Yes? Then we're in the same boat ;)

Starting a JVM using C/C++ is really easy. You can just rely on Java's Invocation API, which is part of the Java Native Interface (JNI), and allows you to create and manage JVMs in C/C++ and of course, connect to programs developed in Java.
The only thing you have to do is, include the jni-headers link against the JNI C-library and use the following code. The comments should explain what happens.
Read more »

Labels: , , , , , , , ,

Friday, October 26, 2012

Innovation! A word Apple almost forgot

Remember some years ago when Apple used to be innovative? Looks like it's all gone now. If you watched the Apple event some days ago you understand what I mean. Even Apple fanboys/girls should start realizing that they are being messed with. (To be honest: I started writing this entry immediately after the event, but never had the time to finish it…)
Apple did announce quite a few products: updated MacBook Pros, iMacs, Mac minis and, who would have thought, a new iPad as well as a mini version. None of them are really as innovative as Apple pretends they are.
Read more »

Labels: , , , , , , , , , ,

Monday, October 22, 2012

The (near) future of Android: rumors, rumors, rumors (and fakes)

Android robot1
Over the last couple of weeks, people have been talking a lot about Android. In my opinion almost more than they talked about Apple and the new iPad mini (or nano or micro? or event just, small new iPad ;) they could announce tomorrow (if I'm not mistaken).
I'd like to comment on some of them and I hope that the future won't prove me wrong – especially next week's Android event/announcement.

There were rumors surrounding changes to the Nexus program. People thought that more than one manufacturer will release new Nexus devices. This would be really cool, but seriously, do you really think Google would change the Nexus program like that? It would mean blurring the brand Nexus and changing the meaning from "the next generation of Android phones" to "yeah... everyone can make them anytime now" ;)

Something similar are the speculations about other new Nexus devices. The rumors about the next Nexus device includes the LG Nexus (probably LG Optimus Nexus 2X ;), the Sony Nexus (probably Sony Xperia Nexus TL ;) as well as a Samsung Nexus Tablet (probably Samsung Galaxy Note Tab Nexus 10.1n ;).
As it turned out, the leaked images of the Sony Nexus were fakes. The news went around the world…twice. First when people found an image of an alleged Sony Nexus device and then, two days later when the creator of that image announced that it's a fake. He even created a tumblr "Anatomy of a Hoax" to explain why and how he did it. I never really cared for all the leak image. Mostly because they are almost always extremely blurry and I just can't understand how it's even possible to take such awful pictures.
The LG Nexus could be something real, even thought people were already quite often wrong and it turned out that leaked devices were mostly renamed or never even released. Let's just wait for Google's announcement. Same for the Samsung 10' Nexus tablet – let's just wait and see.

What else? The most important thing! Android itself. We all expect a new version and even thought Android 4.1 isn't that old yet, it's already time for a new one – Android has to stay up2date and be the innovative player in the game ;)
The funny thing is: there were rumors around the new version for some time now and all were fakes! :D
Some Google employees just laughed about all those rumors (provided by a fake but reliable source ;). When I first read about that I almost fell of my chair – finally someone admits that all those fanboy-speculations are nothing more than funny (or do we only call supporter of the holy Apple religion fanboys?).
Nevertheless, some more features of Android 4.2 (still Jelly Bean, but I guess including at least 0.1% more beans) are believed to be true: multi-user support as well as some security enhancements. Sounds great but I think a week is not too long to wait what Google really has to announce. At least better security sounds reasonable. Multi-user support also sounds ok, but in my opinion only makes sense on tablets – or do you share your smartphone? One day you one day your boy/girlfriend and every second sunday your little brother/sister can use it!? ;)

I bet I forgot a lot of rumors and I would love to read about some more in the comments! I'm definitely going to comment back and rant about them ;P
What's the morale of the story? Rumors are fun to read (not only Android rumors ;) but let's don't trust them – especially serious news companies should be more careful and mark their rumor posts accordingly (I already saw some websites actually announce different features).

PS. Just read that LG's mobile product planning head Amit Gujral confirmed the launch of an LG Nexus device :)

1The Android robot is reproduced or modified from work created and shared by Google and used according to terms described in the Creative Commons 3.0 Attribution License.

Labels: , , , , , , , , , , , , ,

Sunday, October 21, 2012

Thoughts: Padfone 2

Some days ago, ASUS announced the next generation of their Padfone. I missed the event's live stream by minutes but fortunately they immediately uploaded the video, so for those who like watching release events, go ahead (skip ahead to 16:05) and don't forget to come back and read my thoughts afterwards ;)

Introduced by ASUS' chairman Jonney Shih, the ASUS Padfone 2 is a great improvement over the first generation and as I didn't comment on the whole phone-table-transformation-thing in the past, there it is: it's actually a really good idea.
Why buy two different devices from possibly different manufacturers, when you can have one device. The ASUS Padfone 2 removes most needs for data synchronization because it's just a phone with a second skin: the tablet stand. It's a great idea to just put your phone into some kind of cover that immediately turns it into a fully-featured tablet.

It took me a while to complete this blog post but let's finally look at the specs: just great. The 13 megapixel back-facing camera sounds promising, as does the front-facing cameras (the tablet stand has another front-facing cam ;). The phone is quite big (4.7'), but which smartphone isn't and a 10.1' is great if you want to seriously work in it. Very important for me: it has NFC! I don't think we have to mention the CPU and memory because everyone tries to provide the newest and fastest experience ;)
But let's mention something sad: it still has hardware buttons. I have nothing against a hardware power button as well as hardware volume buttons but why do manufacturers insist on making those ugly (and inflexible) hardware menu, home and back buttons. Another sad thing is the Android version, which is only 4.0 but ASUS at least promised to update it to 4.1 sometime later. This brings me to software, which is also really sad. They didn't talk about it but we saw it on the slideshows: ASUS will again, use their own user interface which in my opinion is nothing but ugly – especially when it comes to icons.

The design is also quite nice, even though I'm not so sure about the phone part yet. From some angles it looks great (back) but from others (front), it's not that beautiful – especially ASUS' ugly hardware button icons. At least there's almost no frame (at least at the sides), which I really like about smartphones. The less unused frame the better. The whole thing is also very light which is great – especially because phone and tablet combined is much lighter than e.g. iPad 3 and iPhone 5 combined. I admit, you can use those two independently, but why would I do that (being a regular user and not a developer like some of us are ;)?

When they announced battery life, I was really stunned. I still don't believe it, but apparently the phone's battery alone will last for 2 weeks in standby with 3G turned on! This would be amazing, when I think about me charging my phone every second day…
What's even better is, that the tablet stand also comes with a battery which will charge the phone's battery which means three times as much power.
And what about the price? In my opinion very cheap: only $799-$899 for the phone and the tablet, especially compared to other products where the phone alone will be as expensive as $800 ;)

So what's my conclusion? It's a great idea and the specs are also alright. There are still some things that need improvement (Android version, custom UI) but it's a good start – at least if you know you want a tablet-smartphone combination from the start. Am I going to buy it? Probably not. I recently bought a new smartphone which is absolutely awesome (Galaxy Nexus *cough*). Or do you think a student can afford to buy every other gadget  because they want to test and review it? Unfortunately now. But I am always open to (hardware and other) donations ;P

Labels: , , ,

Tuesday, October 16, 2012

OS X: don't trust the POSIX certificate

According to Wikipedia as well as other sources, Apple's OS X is supposed to be 100% POSIX (Portable Operating System Interface) compliant. Please don't trust them – they are wrong (or at least have another measure for 100%).
I already knew that OS X as well as most Apple products are different – sometimes "good different", sometimes "bad different". This time, OS X is definitely bad different.

As you probably know, IEEE's POSIX is a family of standards for maintaining compatibility between operating systems. It defined a really powerful API and most variants of UNIX as well as other operating systems (e.g. OS X, QNX and most Linux distributions) are compatible with those APIs.
Maybe this is already the problem: POSIX only defines the application programming interface but apparently doesn't require an implementation.

Now what is the problem I have? I'm supposed to solve a small assignment for my university course Distributed Real-Time Systems. The topic is JNI (Java Native Interface) and how to start a JVM (Java Virtual Machine) from C and then communicate between the Java- and C-code.
Because it's supposed to use multiple threads to enforcing real-time (like) execution, I wanted to communicate between the manager- and real-time-thread using semaphores. The real-time thread just posts (sem_post) whenever it changed values, the manager has to send to Java.
Of course, unnamed semaphores via sem_init are sufficient for that, no IPC (Inter Process Communication) is needed.

The problem: sem_init just wouldn't stop resulting in -1, which, of course, stands for an error. Now the weird thing was, that the error said, that the function is not implemented. Why wouldn't it be implemented? It's defined in the header file and it compiles without a problem.
So I consulted friend Google and what do I find? Apparently OS X does comply to the POSIX semaphore interface description, but does not implement all the functions. And one of those functions is sem_init.
Apparently Apple thinks, developers should use named semaphores instead, because there's no difference in those functions.

What do we learn from this?

  1. Always check return error codes in C,
  2. OS X is definitely not fully POSIX compliant and
  3. again, always check return error codes in C ;)

Labels: , , , , , , , ,

Saturday, October 6, 2012

Working with Samsung's S-Pen

On Thursday I visited Samsung's GALAXY Studio to draw something on their Galaxy Note 10.1 and get a chance to win one of Samsung's new Galaxy devices (Galaxy Note 2, Galaxy Note 10.1 or Galaxy S3) – though I'm sure my untalented drawing won't win this week ;)
Samsung promised to also print out your drawings on a T-shirt but unfortunately their T-shirt-printer broke the day before so we just got photo prints.

Of course this GALAXY Studio is only promotion for their devices, especially the Note devices which feature the S-Pen – a stylus to be used with the Note devices to accurately input drawings.
So I took the opportunity and not only tested simple drawing but also using the keyboard as well as testing some of the features (especially apps!) Samsung announced for the Note 2.

Drawing using the S-Pen really works great, because with just fingers, you could never reach that high accuracy. Sometimes drawing didn't work: I saw the result but after lifting the pen, the last drawing vanished again. Fortunately this only happened when I accidentally also touched the screen with my hand, so it looks like the the Galaxy Note 10.1 was just too big for me ;)
Using the keyboard with the stylus was also really easy and not as uncomfortable as I expected, but I definitely prefer using my fingers for this one – and luckily that's possible!
I also asked Samsung's promoters about this feature where you can write notes on the back of a picture (which in my opinion is a great idea). At first they did not understand my question, they thought I wanted to use images in my notes, not notes on my image – but eventually they were able to show it to me ;)
It was just after they showed me how to open that, when I realized that the Samsung (and almost all the other manufacturers) still use hardware keys – which was why I was not able to find the feature: it was just hidden in an off-screen menu.
Last but not least, the guys there, showed me a neat app to edit photos – similar to Instagram (but with more useful effects). I didn't catch the name but it comes out of the box with at least the Note 2.

So what's the conclusion? I really like the S-Pen technology and it's really easy and comfortable to use but it's also great to be able to use your fingers if you like (without feeling any difference). This stylus approach is especially useful for drawing as well as quickly taking notes – writing with a pen is usually faster than using a (software) keyboard. There are some small flaws but I guess they are not that grave.
The apps on the Note 2 are also quite nice, but the device itself is a little bit too big for a phone – so let's continue calling it a phablet ;)
Also, Samsung deciding to use hardware keys was not a good decision. It's hidden and does not help users get the best out of their Android device (especially when switching between manufacturers). I definitely prefer the Google way on my Galaxy Nexus: only software buttons and action items I'm already used to.
Now I only need to win one of those devices ;)

UPDATE: I did not win – the competition was too good ;)

Labels: , , , , ,