Site updated at 2013-03-25 16:56:15 UTC

master
Chakib (spike) Benziane 11 years ago
parent 034c564598
commit ea4852328d

@ -3,11 +3,11 @@
<html>
<head>
<meta charset="utf-8">
<title>Development As A Service - </title>
<title>Development as a Service on its baby steps - </title>
<meta name="author" content="Chakib Benziane">
<meta name="description" content="Development as a Service Let me start by presenting a new web service pythonanywhere.com. It&#8217;s a full python development stack, ready to be &hellip;">
<meta name="description" content="Development as a Service on Its Baby Steps Let me start by presenting a new web service pythonanywhere.com. It&#8217;s a full python development &hellip;">
<!-- http://t.co/dKP3o1e -->
@ -78,7 +78,7 @@ document.write("<a href='http://sp4ke.com'><img src='http://www.gravatar.com/ava
<div class="mid-col-container">
<div id="content" class="inner"><article class="post" itemscope itemtype="http://schema.org/BlogPosting">
<h1 class="title" itemprop="name">Development as a Service</h1>
<h1 class="title" itemprop="name">Development as a Service on Its Baby Steps</h1>
<div class="entry-content" itemprop="articleBody"><p>Let me start by presenting a new web service <a href="http://www.pythonanywhere.com/">pythonanywhere.com</a>.</p>
<p>It&#8217;s a full python development stack, ready to be used in your browser. After a quick subscription for a free account,
@ -133,6 +133,12 @@ Maybe we&#8217;re not concreted with that yet, but the next generations of progr
</article>
<section id="comment">
<h1 class="title">Comments</h1>
<div id="disqus_thread" aria-live="polite"><noscript>Please enable JavaScript to view the <a href="http://disqus.com/?ref_noscript">comments powered by Disqus.</a></noscript>
</div>
</section>
</div>
</div>
<footer id="footer" class="inner"><p>
@ -154,7 +160,10 @@ Maybe we&#8217;re not concreted with that yet, but the next generations of progr
var disqus_shortname = 'sp4ke';
var disqus_script = 'count.js';
// var disqus_developer = 1;
var disqus_identifier = 'http://sp4ke.github.com/blog/Development-as-a-Service/';
var disqus_url = 'http://sp4ke.github.com/blog/Development-as-a-Service/';
var disqus_script = 'embed.js';
(function () {
var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;

@ -4,7 +4,7 @@
<title><![CDATA[]]></title>
<link href="http://sp4ke.github.com/blog/atom.xml" rel="self"/>
<link href="http://sp4ke.github.com/blog/"/>
<updated>2013-03-25T17:52:59+01:00</updated>
<updated>2013-03-25T17:56:12+01:00</updated>
<id>http://sp4ke.github.com/blog/</id>
<author>
<name><![CDATA[Chakib Benziane]]></name>
@ -177,7 +177,7 @@ some tips I learned about textures and details.</p>
</entry>
<entry>
<title type="html"><![CDATA[Development As A Service]]></title>
<title type="html"><![CDATA[Development as a Service on its baby steps]]></title>
<link href="http://sp4ke.github.com/blog/Development-as-a-Service/"/>
<updated>2012-04-29T20:26:09+02:00</updated>
<id>http://sp4ke.github.com/blog/Development-as-a-Service</id>

@ -7,7 +7,7 @@
<meta name="author" content="Chakib Benziane">
<meta name="description" content="2013 Mar 6 UI Design, jib.li Redesigning jibli - lessons learned form Hack Design Part 1 2012 Apr 29 IT, programming, python Development As A &hellip;">
<meta name="description" content="2013 Mar 6 UI Design, jib.li Redesigning jibli - lessons learned form Hack Design Part 1 2012 Apr 29 IT, programming, python Development as a &hellip;">
<!-- http://t.co/dKP3o1e -->
@ -124,7 +124,7 @@ document.write("<a href='http://sp4ke.com'><img src='http://www.gravatar.com/ava
</span>
</div>
<h1 class="title" itemprop="name"><a href="/blog/Development-as-a-Service/">Development As A Service</a></h1>
<h1 class="title" itemprop="name"><a href="/blog/Development-as-a-Service/">Development as a Service on its baby steps</a></h1>
</article>
</section>

@ -4,7 +4,7 @@
<title><![CDATA[Category: IT | ]]></title>
<link href="http://sp4ke.github.com/blog/blog/categories/it/atom.xml" rel="self"/>
<link href="http://sp4ke.github.com/blog/"/>
<updated>2013-03-25T17:52:59+01:00</updated>
<updated>2013-03-25T17:56:12+01:00</updated>
<id>http://sp4ke.github.com/blog/</id>
<author>
<name><![CDATA[Chakib Benziane]]></name>
@ -14,7 +14,7 @@
<entry>
<title type="html"><![CDATA[Development As A Service]]></title>
<title type="html"><![CDATA[Development as a Service on its baby steps]]></title>
<link href="http://sp4ke.github.com/blog/Development-as-a-Service/"/>
<updated>2012-04-29T20:26:09+02:00</updated>
<id>http://sp4ke.github.com/blog/Development-as-a-Service</id>

@ -98,7 +98,7 @@ document.write("<a href='http://sp4ke.com'><img src='http://www.gravatar.com/ava
</span>
</div>
<h1 class="title" itemprop="name"><a href="/blog/Development-as-a-Service/">Development As A Service</a></h1>
<h1 class="title" itemprop="name"><a href="/blog/Development-as-a-Service/">Development as a Service on its baby steps</a></h1>
</article>
</div>

@ -4,7 +4,7 @@
<title><![CDATA[Category: jib.li | ]]></title>
<link href="http://sp4ke.github.com/blog/blog/categories/jib-li/atom.xml" rel="self"/>
<link href="http://sp4ke.github.com/blog/"/>
<updated>2013-03-25T17:52:59+01:00</updated>
<updated>2013-03-25T17:56:12+01:00</updated>
<id>http://sp4ke.github.com/blog/</id>
<author>
<name><![CDATA[Chakib Benziane]]></name>

@ -4,7 +4,7 @@
<title><![CDATA[Category: programming | ]]></title>
<link href="http://sp4ke.github.com/blog/blog/categories/programming/atom.xml" rel="self"/>
<link href="http://sp4ke.github.com/blog/"/>
<updated>2013-03-25T17:52:59+01:00</updated>
<updated>2013-03-25T17:56:12+01:00</updated>
<id>http://sp4ke.github.com/blog/</id>
<author>
<name><![CDATA[Chakib Benziane]]></name>
@ -14,7 +14,7 @@
<entry>
<title type="html"><![CDATA[Development As A Service]]></title>
<title type="html"><![CDATA[Development as a Service on its baby steps]]></title>
<link href="http://sp4ke.github.com/blog/Development-as-a-Service/"/>
<updated>2012-04-29T20:26:09+02:00</updated>
<id>http://sp4ke.github.com/blog/Development-as-a-Service</id>

@ -98,7 +98,7 @@ document.write("<a href='http://sp4ke.com'><img src='http://www.gravatar.com/ava
</span>
</div>
<h1 class="title" itemprop="name"><a href="/blog/Development-as-a-Service/">Development As A Service</a></h1>
<h1 class="title" itemprop="name"><a href="/blog/Development-as-a-Service/">Development as a Service on its baby steps</a></h1>
</article>
</div>

@ -4,7 +4,7 @@
<title><![CDATA[Category: python | ]]></title>
<link href="http://sp4ke.github.com/blog/blog/categories/python/atom.xml" rel="self"/>
<link href="http://sp4ke.github.com/blog/"/>
<updated>2013-03-25T17:52:59+01:00</updated>
<updated>2013-03-25T17:56:12+01:00</updated>
<id>http://sp4ke.github.com/blog/</id>
<author>
<name><![CDATA[Chakib Benziane]]></name>
@ -14,7 +14,7 @@
<entry>
<title type="html"><![CDATA[Development As A Service]]></title>
<title type="html"><![CDATA[Development as a Service on its baby steps]]></title>
<link href="http://sp4ke.github.com/blog/Development-as-a-Service/"/>
<updated>2012-04-29T20:26:09+02:00</updated>
<id>http://sp4ke.github.com/blog/Development-as-a-Service</id>

@ -98,7 +98,7 @@ document.write("<a href='http://sp4ke.com'><img src='http://www.gravatar.com/ava
</span>
</div>
<h1 class="title" itemprop="name"><a href="/blog/Development-as-a-Service/">Development As A Service</a></h1>
<h1 class="title" itemprop="name"><a href="/blog/Development-as-a-Service/">Development as a Service on its baby steps</a></h1>
</article>
</div>

@ -4,7 +4,7 @@
<title><![CDATA[Category: UI Design | ]]></title>
<link href="http://sp4ke.github.com/blog/blog/categories/ui-design/atom.xml" rel="self"/>
<link href="http://sp4ke.github.com/blog/"/>
<updated>2013-03-25T17:52:59+01:00</updated>
<updated>2013-03-25T17:56:12+01:00</updated>
<id>http://sp4ke.github.com/blog/</id>
<author>
<name><![CDATA[Chakib Benziane]]></name>

@ -156,7 +156,7 @@ resources shared on HN and <a href="http://hackdesign.org/courses/"> Hack Design
</div>
</div>
<h1 class="title" itemprop="name"><a href="/blog/Development-as-a-Service/" itemprop="url">Development as a Service</a></h1>
<h1 class="title" itemprop="name"><a href="/blog/Development-as-a-Service/" itemprop="url">Development as a Service on Its Baby Steps</a></h1>
<div class="entry-content" itemprop="articleBody">
<p>Let me start by presenting a new web service <a href="http://www.pythonanywhere.com/">pythonanywhere.com</a>.</p>

@ -2,7 +2,7 @@
<urlset xmlns='http://www.sitemaps.org/schemas/sitemap/0.9'>
<url>
<loc>http://sp4ke.github.com/blog/Development-as-a-Service/</loc>
<lastmod>2013-03-25T17:52:53+01:00</lastmod>
<lastmod>2013-03-25T17:55:25+01:00</lastmod>
</url>
<url>
<loc>
@ -12,10 +12,10 @@
</url>
<url>
<loc>http://sp4ke.github.com/blog/</loc>
<lastmod>2013-03-25T17:52:53+01:00</lastmod>
<lastmod>2013-03-25T17:55:25+01:00</lastmod>
</url>
<url>
<loc>http://sp4ke.github.com/blog/blog/archives/</loc>
<lastmod>2013-03-25T17:52:53+01:00</lastmod>
<lastmod>2013-03-25T17:55:25+01:00</lastmod>
</url>
</urlset>

@ -0,0 +1,59 @@
---
layout: post
comments: true
categories: [python, programming, IT]
title: "Development as a Service on its baby steps"
date: Sun Apr 29 20:26:09 +0200 2012
---
Let me start by presenting a new web service [pythonanywhere.com](http://www.pythonanywhere.com/).
It's a full python development stack, ready to be used in your browser. After a quick subscription for a free account,
you have access from your dashboard to [python, ipython, bash] consoles in different python flavours.
You can also browse your files, make cron scripts and create python web apps on the fly.
The most interesting features are the consoles pause/resume feature, which can be shared
with other people. This could be very helpful to collaborate on code or teach python.
Behind the scene, it's an encrypted ajax window over your home folder running on a remote server hosted on EC2.
DaaS may be on it's first baby steps. Though, it could rapidly become a standard way to code for developers especially in startups.
Before diving in the pros and cons, let's analyse the different development stacks possibilities.
<!-- more -->
First, there's the good old fashion way. Setup a server on a cloud service
(I guess there's still people doing it with bare metal servers ). You have plenty of choice there, (EC2, AppEngine, Azure, Rackspace...),
it depends on your IT needs, spiritual beliefs (many don't care) and your pockets.
Then pick the development stack of your preferred language/framework: Python(Django, Web2py, Pylons, Flask...), Ruby(Ruby On Rails) for the rock stars, Java/.Net, PHP ...
Here, you have to maintain every piece involved in the process, packages versions, build tools, deployment, scaling. That's a lot of time and resources needed to finally get your developers pushing and your apps running.
The next big step was the [Heroku](http://www.heroku.com) and [ Dotcloud ]( http://www.dotcloud.com ) like services, aka Deployment/Scaling as a Service.
They release from the burden of deploying and give enough abstraction to exclusively focus your effort on the application logic.
The process is often the same, basically setup your project with a simple conf file, then deploy to the server with one command.
They practically all handle version control systems like git,
so your project is deployed every time you push your code.
I believe Github helped a lot making these services exist as deployment is often tightly bound to code revisions, and Github offers an excellent API and a huge community.
We have been adding more and more abstraction to the development process in order to make it easier, faster, stronger ...
However, there is still one constant, "localhost development". The coding itself is done on your machine/laptop.You still can use your favourite OS, IDE, tools.
Well, DaaS is going to cross that last barrier.
There are already several web services for online development like [jsfiddle.net](http://jsfiddle.net) for web design or [koding.com](http://koding.com).
They offer something that could change the way we see development, the abstraction of your OS, ide and development environment.
If you think about it, that's a lot of time saved. No multi-platform mess, no more scripts to ensure the same development stack. Using the enormous processing power
of cloud platforms, there is virtually no compile time. You can even forget about your machine, all you need is a keyboard and a screen.
It seems only benefit but the thing is, if DaaS is really going to be the next step,I think we are missing something very important.
Before a developer learns to code, he has
to understand the building blocks of programming, what's a computer, what's an Operating System, how does it do its work. All the abstractions we built are built
using this knowledge. How could a programmer understand code optimization ? Security flows?
How could he understand the interaction of his code with its environment if he's not gonna use it?
Maybe we're not concreted with that yet, but the next generations of programmers are.
What do you think ?