First experience with Uhuru Cloud

First experience with Uhuru Cloud

It is a “Heroku” for .Net Guys like me, no learning curve for learning command lines to deploy or setup your website or creating a database instance.

Supporting some of the most cool programing language (I only tested out .NET, PHP and Node.js).

Services include them common databases like MySQL, MsSQL and MONGODB. (it is in capital because I tried setting up it on heroku and the command lines kills me a lot.)

Managing with Uhuru

Uhuru comes with a Web Console and a Uhuru Cloud Admin (a Window application, will label it as “UCA” in this post ) which you can installed to your windows and manage your instances with ease.
Response of the UCA is still acceptable, you can create the services like new database, new FTP access to your code folder.

You are also able to assign and manage your team members’ permission like accessing the FTP, databases via the web console.
There is also Visual Studio plug in which you can do management as well, didn’t tested this out yet cause it only supports “Visual Studio 2010″ (I’m on Visual Studio 2008 Standard)

You can find out more on here.

 Tunnel

To access your database or setting up FTP services, you are required to open the Tunnel (something like your infra guys setting up a VPN for you to work from home).

FYI: not all the cPanel type hosting package lets you connect to MySQL remotely, not sure what were they thinking when they come up with their setup.

Find out more at here.

Learning Curve

It only took me half day to deploy a web site, testing out the database (MySQL, MsSQL and Node.js), setting up the FTP and play around with the other features.

Didn’t go full force on testing the performance yet, but will update it in the future.

The not so good stuff:

  1. I can’t find the section to add new team members on the UCA
  2. Not all function is available for command line yet. Tried to setup on my Mac OS and there were some head banging on the table moments, for company that needs to “Puppet”-ize the server for auto scalability (like mine), the “Puppet” master will have tough time trying to implement the scripts.
  3. There are no option for me to setup “Database replication” to make a Master (for data manipulation) and Slave (for read only) environment.
    If your hosting a simple site for your client, this won’t be a show stopper for you.But if your building a product where you have to handle huge traffic, you’ll have trouble scaling without “Replication”.
  4. It is already a very good service since uhuru supports MongoDB, but supporting “Apache Solr” and “Memcache” would be a awesome bonus.
  5. Currently their data center is hosted in California, USA (based on the engineer that support me), so you can’t expect stuff like CDN or location based hosting like AWS and Azure is offering.

Overall

Is a excellent platform for me to host prototype projects, where they support most of the cool technology I’m using.

Also I would use it to host company’s projects that is done during non working hours, the infra guys won’t give you AWS access and they won’t be working after working hours and asking for VPN access for your team members is a pain in the ass. (Company Policy :S )

 

If you would like to join their free premium hosting for 1 year party, click here to find out more.

ASP.NET MVC vs Yii MVC

yii frameworkI wanted to create a simple web application that allows me manage the data in MySQL Database, I do not wish to waste my time on coding simple CRUD functions. I prefer to generate the codes every time i modified the database.

Been notice that ASP.NET MVC would help me to achieve that, able to find samples of running ASP.NET MVC with MySQL (By default, the codes run with MsSQL).  But in the end, i found out few issues of using it.

  1. All Visual Studio Express version does not allow 3rd party extensibility.
    Means I can’t use Entity Framework with .Net Connector by MySQL to auto generate the “Model” with Visual Studio.
    Not everyone have a Standard(Paid licence) version of Visual Studio, I’m using Visual Studio 2008 Standard for the testing above.
  2. Since I’m using Visual Studio 2008 Standard, I’m only able to use ASP.NET MVC2, which now they have launched ASP.NET MVC3 (with better features and support).
So I have to look for other alternatives, but somehow, “Yii” has been a buzzword among the company. There are even presentation and demo on how to create sites in 10mins or so.
Well, is free and there is so many Gurus around to guide me and give me crash course and all I need to do is to learn how to setup Apache & PHP on my Windows. Why not give it a try… after all, if it is PHP, there shoudn’t be a problem generating CRUD and models with MySQL.
After the completed the setup, I start to follow the quick guide on setting up Yii and guide to setup my first Yii Application. Encountered the problems bellow which took some of my time to diagnose:
  • Warning: date(): It is not safe to rely on the system’s timezone settings
    “WTF”
    was the first thing that comes on my mind, then I goggled and found out Setting timezone in your php.ini date.timezone = “UTC” to fix this.
  • CDbConnection failed to open the DB connection: could not find driver
    Again, “WTF” comes in my mind again.

    1. First, I checked if my DB connection setting was correct for Yii, and it looks good.
    2. Next, lots of google results showing “extension=php_mysql.dll was not enabled“. So I enabled it in PHP.ini, and restart the apache. But I still can’t connect my first Yii application.
    3. Dafaq~~~~ done more google and found a new word call “PDO extenstion”. So I run my personal favorite PHP code (sorry, not “hello world”), phpinfo.php page and looked for the PDO section, nothing was loaded.
      Checked with all the Yii Gurus but non of them encounter this issue, reason is they install Apache & PHP via Xampp and Wamp… :(
    4. After sometime google-ing, found out that I need to do the following chances.
      php.ini set extension_dir = “C:\webserver\php\ext”
Damn~~~~ *@#*&*&%*#&*!&$*&!@($& !!!!
And finally, my first Yii Application runs~~~ Horaay….
So the lesson learn in this experience is, all those tutorial or videos of “Creating Yii application in 10min” is for people who knows and been using PHP.
For a .NET guy like me, we’ll need more time than 10 mins to run our “First” Yii application, because we learn how to setup the server first…. So is 20 mins for to really create our “First” Yii application (if we find a video or tutorial on “setting up apache & php in 10 mins“)
Overall, Yii serve the purpose of letting me do more advance stuff instead of wasting time creating simple and boring management page for internal staff.
Next… The UI control challenge awaits me…

 

Mono doesn’t support ASP.NET Web Site Projects

When I first heard about Mono and it’s wonderful features that allows to host ASP.NET web sites in Linux environment, I have to admit… I jizzed a little in my pants… :B

Imagine hosting ASP.NET code without the need of Microsoft Licence, makes me love Open Source more. Man… I was excited… until today…

The adventures begins when I start setting up MonoDevelop and source control with Git on my Mac, cloned the repository of code (which was previously written with Visual Studio and running nicely in the production server).

Visual Studio's "Open Web Site"

Couldn’t find “Open Web Site” options that I use to open my ASP.NET Web Site in Visual Studio (refer to image1). Tried opening and created few new projects to run my existing codes, in the process, I have to manually add reference to some of the .NET Framework’s DLL (Example: System.Data.SqlClient).

 

 

After few try and failure, I seek answers from the wise “Google”. After that I was screaming OMFG (in my mind) when i saw the few discussions (the discussion that made me drop down from cloud 9 is listed at the bottom of this post).

It turns out that Mono only supports ASP.NET Web Application Project, and not Web Sites Project.

Is a disappointment at the moment, but I strongly believe that the best of Mono will continue to grow and become awesome one day. Until then, We’ll will have to wait patiently.

I’ll write another post to explain why ASP.NET Web Application Project doesn’t fit in a consumer based web site. Stay tuned. :B

Updates on 29 April 2012:
It seems that I’ve made a mistake on Mono, Mono do support ASP.NET Web Site Projects.
Is MonoDevelop that doesn’t support it, a Mono rookie mistake i made like others.
Tested and verified!!
Found out the answer by a link sent by “The General”, click here to find out more.

Reference: