Archive

Archive for February, 2013

Jace.NET 0.8 released

February 27, 2013 1 comment

Jace.NET 0.8 has been released for .NET, WP7, WP8 and WinRT. This is a major update to the calculation engine. The following features have been added or fixed:

  • Rewrite of function handling
  • Support for custom functions
  • Support for multiple new mathematical functions
  • Fixed a parsing bug occurring with negative numbers

The new version is uploaded to the official NuGet repository: https://www.nuget.org/packages/Jace. The source can be found on GitHub: https://github.com/pieterderycke/Jace.

The documentation will be updated the coming days to cover the new features: https://github.com/pieterderycke/Jace/wiki.

Categories: Jace.NET

HTC 8X Review

February 16, 2013 Leave a comment

What’s inside the box

When you see a packaged HTX 8X you immediately notice how “green” its packaging is. All is mainly made of paper and cardboard. It’s good no notice that HTC is doing a serious effort to help saving the environment.

DSC01661 DSC01663

Inside the packaging, you will find the device itself, a pair of ears and a Micro-USB cable and power adapter. There is also a quick guide included to help you getting started with the device.

Device

I own a Nokia Lumia 800 and although the HTC 8X is with its 4.3 inch slightly bigger, it is a lot lighter and more pleasant to hold in your hands. The curved polycarbonate back feels really superb.

 DSC01665 DSC01669 DSC01664

The screen is bright and crisp and has a good viewing angle. It is a 4.3 inch 16:9 screen running with a 1280×720 resolution (a noticeable improvement compared to the 800×480 resolution of previous generation WP7.5 devices).

DSC01666

Performance of the device is good with the Qualcomm S4 1.5 GHz Dual-core CPU combined with 1 GB of RAM. All applications I daily run on the Nokia Lumia 800, run remarkably faster on the HTC 8X. Most applications and games start almost immediately.

The device has 16 GB of free storage, but there is no support to extend the internal storage with an SD card. Although, this should be sufficient for most users, audio freaks who want their entire music collection in their pocket could be disappointed. I would prefer different models with different internal storage sizes, similar to the iPhones.

Battery life is very good and the device charges quickly. My mobile phone usage is above average and I can easily come through the day without a recharge. Furthermore, it contains all the necessary features you expect from a (high-end) smartphone: Wifi, GPS, a gyroscope, a front and back camera … FM radio is unfortunately not supported.

Operating System

The HTC 8X is running on Windows Phone 8, the latest mobile phone operating system of Microsoft. Under the hood this OS underwent major changes compared to the previous version. It is now running on a NT kernel similar to Windows 8. Thanks to this new kernel, Microsoft now supports dual core CPUs and NFC on phones.

The user interface underwent minor changes. The look and feel of Windows Phone 8 is still pretty much the same as it was on Windows Phone 7, but this is not a negative point. It makes WP8 a beautiful and simple to use OS. The responsiveness of the OS is remarkable good; although this could also be thanks to the hardware of the HTC 8X.

wp_ss_20130207_0001 wp_ss_20130207_0002 wp_ss_20130207_0003

Internet Explorer Mobile has been upgraded to version 10. A version similar to the desktop version available for Windows 8 and soon for Windows 7. Version 10 offers better HTML5 support as well as support for touch interaction. Bookmarks and history can be automatically back-upped to the cloud.

Microsoft made it possible to install updates over the air. Gone are the days you had to install Zune and connect your phone to your PC. A small but pleasant addition 🙂

wp_ss_20130207_0005 wp_ss_20130207_0014 wp_ss_20130212_0001

WP8 integrates into Microsoft its Intune device management platform, allowing easy administration of devices for enterprise clients. This makes WP8 (and thus also the HTC 8X) an attractive choice for mid and large enterprises. The only (small) showstopper is the lack of VPN support, although according to rumors on the internet this is planned for a future release of the OS.

Software

WP8 comes out of the box with a collection of high quality software from Microsoft: a mobile version of Microsoft Office with integrated support for Sharepoint and Skydrive, OneNote, a mail client compatible with Exchange, a PDF reader, a maps application …

Just like most Windows Phone manufactures, HTC provides also a number of free dedicated applications for owners of HTC devices. Unfortunately, compared to Nokia the offer is limited and the applications are pretty basic. Nokia bundles: Nokia Drive, Nokia Music, Nokia Reader, Nokia Volume Monitor, Nokia Transit … The number of applications and the quality of these applications is unmatched by any other WP8 manufacturer.

wp_ss_20130207_0007 wp_ss_20130207_0009

All existing WP7 software is compatible with WP8. The offer is more limited then on Android and IOS, but all major apps are there: Angry Birds, Facebook, Twitter, Spotify, Skype … But instead of 100 farting apps available, you will have to be happy with only ten 😉

wp_ss_20130207_0012

With WP8, Microsoft opened the door for 3rd party application development using DirectX and C++, so I soon expect to see a lot ports of classic computer games similar to the releases on Android and IOS. Let’s all hope a Windows Phone version of GTA Vice City is released in the future 🙂

Camera

The 8-megapixel camera of the HTC 8X is remarkable good. Shots are great even in low lighting.

WP_20130216_001 WP_20130216_002

Conclusion

The HTC 8X is a great Windows Phone 8 device. It is light, pleasant to hold in your hands and has a bright crisp screen. The HTC 8X is definitely more elegant then the Nokia Lumia 920, but Nokia bundled better applications. So if you want to buy a new high-end Windows Phone 8 device, you will have to decide between the Nokia apps or the elegancy of the HTC 8X.

Categories: Review

Synology DS212j review (part 2)

February 5, 2013 3 comments

Synology provided me the opportunity to test a NAS device: the DS212j. In the next couple of weeks, I will write a review of this device split over a number of blog posts. It will be a rather untraditional NAS review, because I will also spend time looking at its features for running .NET and PHP code, how easily it can run developer tools and finally I will have a look at the SDK.

    1. The Synology DS212j
    2. Setting up a Development environment on the NAS (this article)
    3. Running custom .NET/PHP/… code
    4. A look at the DSM4.1 SDK

Introduction

Writing this second part of the review was hard. Not that the subject was that hard to grasp, but I found it difficult to find the right angle. The DSM OS is built on top of the Linux kernel and tools. Although the web GUI of DSM does not offer a good support for developer tools (like versioning systems, bug trackers, project management applications …), the underlying Linux system does. And what is great, Synology does nothing to prevent users for accessing the power of this underlying system. All that is needed, is activating SSH support and connecting with the SSH client of your choice. When this is done, you have access to a full blown ARM-powered Linux system.

If you have no Linux or UNIX background it can sometimes be difficult to find your way. I personally am a Windows and .NET developer and although I am not scared from a command line or the PowerShell, it was sometimes quite difficult to find the location of configuration files and applications.

Not all users seem to have issues finding their way around on the DSM using SSH and numerous tutorials and forum posts are available explaining how to install various pieces of software like GIT, SVN, Trac, … The official Synology wiki also contains some valuable information to get you started.

But in a perfect world, setting up a GIT server should be possible with a few clicks in the DSM GUI and using some screens to configure users and create repositories. The same for packages like Trac, Bugzilla … I hope Synology is reading this or some brave developers who are willing to create the necessary 3rd party packages in their free time 😉

MySQL

Let’s maybe start with looking to what is supported through the web based GUI. Activating MySQL support is a matter of selecting the necessary checkbox in the Web Services screen. The package center allows to additionally install phpMyAdmin. A web based tool for administrating MySQL databases. The only thing you have to know (but it is explained on the Synology website) is that the default username for phpMyAdmin is “root” with an empty password.

mySQL_activate phpMyAdmin

The MySQL database on the DS212j is both accessible for applications running on the NAS and for applications running on another computer. The simplest way to do this from .NET is using NuGet to get the ADO.NET driver for MySQL

MySQL_NuGet_Driver

I took the opportunity to develop some complex app, during this review to test out this feature 😉

MySQL_connected

Performance varies based on the specs of the hardware, so do not expect to run the MySQL databases of your small enterprise on the DS212j. Nevertheless, if you are a computer geek it can be quite cool to have your own fat client apps connect to a centrally hosted database on your home network.

IPKG (Itsy Package Management System)

Linux distributions mostly rely on a package management system to ease the installation of additional software packages and components. IPKG is the package management system most frequently used on the DSM. In order to use it, you must download and install the correct version for the CPU available in the NAS (the DS212j is powered by a Marvel Kirkwood mv6281 ARM CPU). The following wiki pages on the Synology website explain how to determine the correct version:

1. http://forum.synology.com/wiki/index.php/Overview_on_modifying_the_Synology_Server,_bootstrap,_ipkg_etc

2. http://forum.synology.com/wiki/index.php/What_kind_of_CPU_does_my_NAS_have

ipkg

Subversion

Subversion support is not available out of the box or installable trough the package center, but the IPKG repository contains it. Installing and setting it up is quite simple if you follow this article on the Synology wiki (http://forum.synology.com/wiki/index.php/Step-by-step_guide_to_installing_Subversion). Although, I would prefer an integrated solution trough the package center.

I found it very convenient to host my own repositories on the local network 🙂

svn_visual_studio_2012

Small recommendation: due to limited CPU and RAM resources on the DS212j I recommend to use the inetd method as explained on the Synology wiki. This method will only consume resources when required.

GIT

I the past I was a big fan of SVN, but more recently I became fund of GIT. Just like with Subversion, it is not supported by DSM trough the package center, but the IPKG repository contains it. Ryan Helco (http://www.bluevariant.com/2012/05/comprehensive-guide-git-gitolite-synology-diskstation/) took the effort to write down the necessary steps to set it up.

Just like with SVN, I have the same remark: it is not super complicated to set up, but it could be done a lot more integrated and user friendly.

Trac

Installing Trac is similar to Subversion and GIT, the package is available in IPKG (search for “py26-trac”). The official Trac documentation contains all the further documentation necessary to further configure the NAS: http://trac.edgewall.org/wiki/TracInstall.

trac_dsm

But again, why not making this available either officially in the package center or by some brave 3rd party developer?

NuGet Package Repository

Nowadays, NuGet is big in the .NET world. It is a package management system developed by Microsoft for .NET assemblies that simplifies adding them to projects and that helps tracking down dependencies. An official repository feed exists, but it is also quite easy to setup your own feed.

I tested the default NuGet server, but unfortunately the Mono version currently bundled with DSM is 2.11.1 and this prevents the default NuGet server from running. I hope Synology will upgrade to a 3.x version of Mono in the near future.

Summary

Like I already expressed in the introduction of this review, I found it very hard to rate the developer experience of the DS212j. Yes, most developer package can run on the DS212j and a lot of people have already done this successfully. Combined with its low power consumption, this makes it a great device to have in your local network.

Unfortunately, installing and configuring the necessary packages and tools is not always that user friendly. Though, either Synology or the 3rd party ecosystem could change this quite easy in the near future by adding a number of these packages to the package center. The bundled MySQL database and phpMyAdmin are a good example. Both are officially available and setting them up is a piece of cake.

Categories: Review