Wednesday 8 July 2015

How was it like to migrate from C#.Net to Ruby on Rails?

If anyone had noticed I am not writing too many posts lately and updating this blog the same way as I was doing it before. The reason being I am very busy working on a project which we are developing on Ruby on Rails. I switched to Ruby on Rails because I knew I would end up on the same road as these guys if I had stayed on with the Microsoft stack.


Ruby on Rails has a long steep learning curve as can be read from these below articles.

Rails is a Ghetto - Zed Shaw, developer, Mongrel

An average Ruby on Rails developer should understand and master all these skills if they ever want to get the full benefit out of rails and increase their speed of application development without compromising on writing high quality code.

  • Ruby
  • Rails
  • RVM
  • Rbenv
  • Rake
  • Rack
  • MVC
  • Migrations
  • Scaffolding
  • Rspec
  • Cucumber
  • Capistrano
  • Gems
  • Git
  • Coffeescript
  • Yaml
  • ERB
  • Sass
  • Haml
  • ActiveRecord
  • PostgreSQL or MySQL or MongoDB or Redis
Principles or Philosophies I love about Rails.

DRY (Do not repeat yourself) principle.

Convention over Configuration.

Separation of concerns.

Modules and Mixins.

Metaprogramming.

Two things which in my opinion is the main reason behind the success of the Rails framework.

1. The Ruby programming language - All the success of the Rails framework should go to ruby for its elegant syntax, simplicity, dynamic typing and functional programming features. You can quickly come up with a functionality with far less code than what is required to achieve the same functionality in other programming languages. Ruby has a great community support and loads of gem libraries for every requirement you can imagine, if no gem meets your requirements then you can start writing your own gems and release it for others to use it and also use it with in your own project.
2. BDD - Behaviour driven development using Rspec and Cucumber. Even though the ruby programming language was the main reason for the success of rails framework BDD is the crux of rails. There is a saying that good developers always test their code but anyone who has come from the Java or the .Net background knows how difficult it is to practice test driven development in those languages. It really sucks and makes the whole experience of application development awful. But look at Rspec, it is so much fun to code. We write the test cases first and re-factor our actual code later. 

Although there is too much debate whether TDD is dead or alive in the ruby on rails community I would say its always good to do BDD to prevent breaking a feature when you change code somewhere else at a later point in time. How many times have you felt that changing a code somewhere broke a feature somewhere else and your boss being pretty upset about seeing too many bugs in his new product. 

No wonder why all software firms of all sizes are adopting BDD (Behaviour driven development) as their software lifecycle process for developing their software products.


Roadblocks for the Future 

The Ruby interpreter is slow

Rails and ruby will continue to thrive and evolve as long as start ups exists but if ruby or rails is ever going to seriously make a place at the enterprise level other than being used as a scripting language rather than developing a whole application out of it then rubyists have to seriously work on speeding up the ruby interpreter.

.Net has finally become open source so I am rethinking of migrating back to C#.net.

Sunday 5 July 2015

Gnostics are world haters

People have forgotten that Jehovah once flooded the whole earth and killed everyone except Noah because he hated his own creation.

"Do not love the world nor the things in the world. If anyone loves the world, the love of the Father is not in him. " (1 John 2:15)

"For all that is in the world, the lust of the flesh and the lust of the eyes and the boastful pride of life, is not from the Father, but is from the world. " (1 John 2:16)

"The world is passing away, and also its lusts; but the one who does the will of God lives forever. " (1 John 2:17)
What most people don't know is that earth is ruled by evil Archons whose leader is the devil who is one of the sons of Jehovah which can be revealed from Jesus's own statement in John 8:44, "You are from the father of the devil". This implies that the Devil is one of the sons of Jehovah (the God of the Jews | the Demiurge).

Its literally impossible to rid this world from all evil by any other means except through the gnosis of the Father because this world or earth is ruled by evil Archons who will always make men weak and vulnerable to sin and it is one of the reasons why the Gnostics never set up any moral rules for themselves or never tried to proselytize someone or never ever expected that the earth will somehow turn into a new heaven if everyone adopted their ideology or blindly believed in the saviour.

The Gnostics were clever and they understood the cosmic hierarchy in which they were living in. They knew that the Platonic world of King Helios-Mithras was something extraordinary compared to its model created by Jehovah, the Demiurge who was secretly moved by Sophia and the foolish Demiurge just like human beings thought that he was acting alone and declared himself that "I am God and none beside me." and immediately came a reply from the higher heavens, "You are wrong Samael (Oh god of the blind)!, there is an Immortal Perfect One above you".

"It was quite amazing that the Aeons were emanating from the Father in as much as they were not able to perceive and recognize the one in whom they were." (Gospel of Truth)

Once a man has seen such an amazing view in the Platonic realm how can he love this world which is just a mere shadow copy of the real things that exists in the Pleroma. I almost feel like spitting on this world because this place is such a gutter and no wonder why some Gnostics had an attitude of escaping from this world as soon as possible which evoked the Neo-platonic Philosopher Plotinus to say, "If they hate this world so much why don't they commit suicide and escape from this world."

But what Plotinus don't know is that if you commit suicide you don't leave this world but instead you start a new life all over again from the beginning. You know, that sucks!. Gnostics have the guts to let a secret out which Plato and others found that this secret if it gets out would destroy the very fabric of this world. The secret is simply this, the world is evil and it is ruled by evil Archons whose leader is the Devil. Christ came from above to give us gnosis by delivering us from our sins and let loose us from being a prisoner in a cave and gave us what no eye has seen and what no Archon ear has heard.

Yes, Gnostics are world haters and we have a very good reason to hate it. Sometimes it is better to say the truth and be a jerk rather than be nice and give people false hopes that things are going to turn bright when it never will.