<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">

 <title>Dom Ceja</title>
 <link href="http://blog.ceja.io/atom.xml" rel="self"/>
 <link href="http://blog.ceja.io/"/>
 <updated>2017-02-03T02:39:06+00:00</updated>
 <id>http://blog.ceja.io</id>
 <author>
   <name>Dominique Ceja</name>
   <email>hello@ceja.io</email>
 </author>

 
 <entry>
   <title>History of GNU Nano</title>
   <link href="http://blog.ceja.io/2017/01/27/history-of-gnu-nano/"/>
   <updated>2017-01-27T00:00:00+00:00</updated>
   <id>http://blog.ceja.io/2017/01/27/history-of-gnu-nano</id>
   <content type="html">&lt;p&gt;In the early days of Unix, sorry Windows, a tool called Pine was utilized for emails and reading Usenet groups. Pine was created by the University of Washington in March 1992. Pico (&lt;strong&gt;Pi&lt;/strong&gt;ne &lt;strong&gt;co&lt;/strong&gt;mposer), a text editor, is a tool that allowed users to compose messages in Pine. This suite of tools was quintessential during the 90’s as it provided users within an easy to use interface.&lt;/p&gt;

&lt;p&gt;With the birth of the Debian GNU/Linux project in 1993 and the Debian manifesto in 1994, the ushering of ‘free software’ was well underway. Many uses were perplexed when the binary files for Pine and Pico were not included in these distros. Also, many users, were confused by the cryptic licensing of Pine and Pico.&lt;/p&gt;

&lt;p&gt;In 1999, an engineer by the name of Chris Allegretta, was less than pleased with current licensing that Pico was distributed under. After a weekend spent coding and hacking, a project written in C was born called TIP (&lt;strong&gt;T&lt;/strong&gt;his &lt;strong&gt;I&lt;/strong&gt;sn’t &lt;strong&gt;P&lt;/strong&gt;ico). TIP was a clone or fork of the Pico project. TIP included additional functionality that Pico lacked such as search and replace, go to line and column number, spell check and auto indentation.&lt;/p&gt;

&lt;p&gt;On January 10, 2000, the TIP project was officially renamed to Nano due to namespace conflicts with a Unix command program called ‘tip’. In February 2001, Nano was declared an official program by Richard Stallman. Nano first production release was on March 22, 2001. As of this writing the current version is 2.7.4 released January 10, 2017.&lt;/p&gt;

&lt;p&gt;The command line is your best friend as an engineer and nano’s simplicity lowers the barriers to entry when text editing at your terminal compared to its more advanced companions vi(m) and emacs. Nano is installed by default on most Linux distros including MacOS. Just type nano followed by a file name and off you go.&lt;/p&gt;

&lt;p&gt;Happy Coding.&lt;/p&gt;

</content>
 </entry>
 
 <entry>
   <title>Serverless Architecture</title>
   <link href="http://blog.ceja.io/2016/10/29/serverless-architecture/"/>
   <updated>2016-10-29T00:00:00+00:00</updated>
   <id>http://blog.ceja.io/2016/10/29/serverless-architecture</id>
   <content type="html">&lt;p&gt;Serverless architectures allow for building and managing static client based applications and single page applications  that leverage connecting APIs and their widgets to perform all the heavy lifting of managing infrastructure that was once needed to provide client/server architectures. Gone are the days that developers have to provision, scale, and maintain servers. Now you can think of an idea, write your code, test your code and push that code to your remote repository. The rest is history. Sounds a bit unicornish, huh? This article will provide a brief summary of the different components that can be leverage within the overarching concept of serverless computing.&lt;/p&gt;

&lt;h3 id=&quot;advantages&quot;&gt;Advantages&lt;/h3&gt;
&lt;ul&gt;
  &lt;li&gt;Outsourcing solution
    &lt;ul&gt;
      &lt;li&gt;from a business standpoint this is all about Capital Expenditures and Operation Costs with the reduction of infrastructure costs and devops costs&lt;/li&gt;
      &lt;li&gt;we can leverage a business concept called Economics of Scale&lt;/li&gt;
    &lt;/ul&gt;
  &lt;/li&gt;
  &lt;li&gt;Zero System Administration
    &lt;ul&gt;
      &lt;li&gt;as a developer, playing the role of a sys admin takes away from my creative flow and tinkering as a developer&lt;/li&gt;
    &lt;/ul&gt;
  &lt;/li&gt;
  &lt;li&gt;Scaling
    &lt;ul&gt;
      &lt;li&gt;your simple idea becomes a very popular, horizontally scaling your app will be automatic, elastic and 100% managed by your chosen provider&lt;/li&gt;
    &lt;/ul&gt;
  &lt;/li&gt;
&lt;/ul&gt;

&lt;h3 id=&quot;disadvantages&quot;&gt;Disadvantages&lt;/h3&gt;
&lt;ul&gt;
  &lt;li&gt;Debugging
    &lt;ul&gt;
      &lt;li&gt;can be very challenging as your code relies on many third party APIs&lt;/li&gt;
    &lt;/ul&gt;
  &lt;/li&gt;
  &lt;li&gt;Security
    &lt;ul&gt;
      &lt;li&gt;leverage the client to provide majority of the heavy lifting increases your app’s attack vector&lt;/li&gt;
    &lt;/ul&gt;
  &lt;/li&gt;
  &lt;li&gt;Vendor Control
    &lt;ul&gt;
      &lt;li&gt;this is a big disadvantage as costs can change, API updates, system downtime, loss of functionality and limits&lt;/li&gt;
    &lt;/ul&gt;
  &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Happy Coding&lt;/p&gt;
</content>
 </entry>
 

</feed>
