<?xml version="1.0" encoding="utf-8" ?>

<feed xmlns="http://www.w3.org/2005/Atom">
  <title>Elomar's Random Thoughts</title>
  <link href="http://blog.elomarns.com/atom.xml" rel="self" />
  <link href="http://blog.elomarns.com/" />
  <updated>2014-01-05T14:59:36-08:00</updated>
  <id>http://blog.elomarns.com</id>
  <author>
    <name>Elomar Nascimento dos Santos</name>
  </author>

  
    <entry>
      <title>Out of time</title>
      <link href="http://blog.elomarns.com/out-of-time" />
      <updated>2014-01-05T00:00:00-08:00</updated>
      <id>http://blog.elomarns.com/out-of-time</id>
      <content type="html">&lt;p&gt;I&amp;#39;m a world class procrastinator. It&amp;#39;s sad, but I can&amp;#39;t deny it. And this is really bad, because I have a lot of projects I really want to work. So I have to create mechanisms to fool my brain into not postpone things forever. And the most recent of these mechanisms is to ignore time.&lt;/p&gt;

&lt;p&gt;Every day I get home late and tired from work. After a quick shower and the dinner I sit on my chair, look to the clock on my screen, and think to myself &amp;quot;It&amp;#39;s too late to work, I won&amp;#39;t accomplish anything with such a small time window&amp;quot;. But this is just an excuse, and a pretty bad one. Any amount of time is valuable, not matter how short it is. But this lame excuse is more than enough for a lazy man.&lt;/p&gt;

&lt;p&gt;All my energy and motivation to work are drained simply by knowing how little time I have until sleep. So, as silly as it sounds, if the problem begins by knowing what time it is, maybe the solution is just to remove the clock from my computer and avoid to look to other clocks. Let&amp;#39;s take time off the equation.&lt;/p&gt;

&lt;p&gt;Time is a ruthless foe. It will catch me sooner or later. But until that, I don&amp;#39;t need to be aware of it. I just focus on working without any worry about how much I&amp;#39;ll be able to produce, or when I&amp;#39;ll have to sleep. When it reaches me, I just stop what I&amp;#39;m doing and go to bed.&lt;/p&gt;

&lt;p&gt;Even though it seems like a stupid solution for a serious problem, it seems to work. And that&amp;#39;s enough for me.&lt;/p&gt;
</content>
    </entry>
  
    <entry>
      <title>The most important skill for a software developer</title>
      <link href="http://blog.elomarns.com/the-most-important-skill-for-a-software-developer" />
      <updated>2013-12-04T00:00:00-08:00</updated>
      <id>http://blog.elomarns.com/the-most-important-skill-for-a-software-developer</id>
      <content type="html">&lt;p&gt;It didn&amp;#39;t take too long before I realize the best developers I know share a skill: they can quickly learn new stuff by themselves. And I strongly believe this is the most important skill to be successfull as a software developer.&lt;/p&gt;

&lt;p&gt;It really doesn&amp;#39;t matter what you already know, as long as you know the basics. The real important thing is to be able to fill the gap between &amp;quot;I don&amp;#39;t even know what the fuck is this&amp;quot; and &amp;quot;I get it!&amp;quot; without anyone&amp;#39;s help. You have to know how to learn! And fast!&lt;/p&gt;

&lt;p&gt;That&amp;#39;s why I wouldn&amp;#39;t think twice before choosing a generalist who is a natural learner over a one-trick pony specialist. The generalist will be slow once in a while when working with something new, but he&amp;#39;ll get it over it. In the other hand, the specialist is completely useless off his confort zone.&lt;/p&gt;

&lt;p&gt;However it&amp;#39;s worth to say I&amp;#39;m not here to criticize those who aren&amp;#39;t self-learners. There are a lot of different ways to learn something, and all of them are valid. I just believe those who can learn by themselves have a large advantage when we&amp;#39;re talking about software development.&lt;/p&gt;
</content>
    </entry>
  
    <entry>
      <title>GitHub missing feature</title>
      <link href="http://blog.elomarns.com/github-missing-feature" />
      <updated>2013-10-29T00:00:00-07:00</updated>
      <id>http://blog.elomarns.com/github-missing-feature</id>
      <content type="html">&lt;p&gt;I have this crazy idea that good work deserves a reward. And truth be told, money is the best reward a random stranger can give you. So I think it&amp;#39;s really sad when people behind awesome open source projects don&amp;#39;t earn much money (or even any money at all!) directly with them. That&amp;#39;s why I was considering to build a website where developers would be able to host paid open source software. But nowadays &lt;a href=&quot;/small-is-not-enough-think-tiny&quot;&gt;I don&amp;#39;t want to create such a big product&lt;/a&gt;. And to be honest, I think this would be much more useful as a feature on GitHub.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://github.com/&quot;&gt;GitHub&lt;/a&gt; is already the place where most developers host their code. So if the code is already there, it would take just a few steps to make it profitable. By the way, this is something that many developers already do by themselves or using websites like &lt;a href=&quot;http://codecanyon.net/&quot;&gt;Code Cannyon&lt;/a&gt;. And I believe that many others don&amp;#39;t follow this path just to avoid all the trouble related to earn money selling software.&lt;/p&gt;

&lt;p&gt;As I see this feature, a user would set a repository as paid, then set the price and the payment frequency (one time fee or subscription). After that only the README would be visible to developers who didn&amp;#39;t bought/subscribed the software. And GitHub could make a profit by charging a fixed price for paid repositories (the same model it already applies on private repositories), or by taking its share on each sale, as numerous digital marketplaces do.&lt;/p&gt;

&lt;p&gt;I know this wouldn&amp;#39;t be so simple to implement. It requires at least the writing of code to regularly pay the owners of the paid repositories, and some kind of protection against piracy. But it would make life much easier for anyone who wants to sell his code, and maybe would prevent &lt;a href=&quot;https://groups.google.com/forum/#!topic/capistrano/nmMaqWR1z84&quot;&gt;burnouts on people who works really hard to maintain open source projects while still have a day job&lt;/a&gt;. And GitHub has an army of great developers, it would be a walk on the park to them.&lt;/p&gt;

&lt;p&gt;But I also know this can generate some controversy. It would be a big move to GitHub, as it would introduce a third kind of repository, in addition to the public and private ones. And many developers would start to fear that essential open source software becomes paid. But I think anyone has the right to charge for his own work. It&amp;#39;s nothing more than fair. Open source software is not supposed to be free of charge.&lt;/p&gt;

&lt;p&gt;In the end, GitHub is on the business of making developer&amp;#39;s life easy, and I believe this would be just that.&lt;/p&gt;
</content>
    </entry>
  
    <entry>
      <title>I'm a single player</title>
      <link href="http://blog.elomarns.com/im-a-single-player" />
      <updated>2013-10-07T00:00:00-07:00</updated>
      <id>http://blog.elomarns.com/im-a-single-player</id>
      <content type="html">&lt;p&gt;One key point in life is to really know yourself. You need to know your core strengths and also your flaws. Though I&amp;#39;m far from being the master of self awareness, I know something about myself: partnerships are not my thing.&lt;/p&gt;

&lt;p&gt;I work well with other people, but I&amp;#39;m terrible on sharing power. I like to listen as many opinions as possible, but in the end I want to make the decisions alone. However this is something I can&amp;#39;t ask to anyone who team up with me to develop a product. It wouldn&amp;#39;t be fair.&lt;/p&gt;

&lt;p&gt;I&amp;#39;ve tried a few times to build something with very close friends. People whose opinions and skills I deeply respect. And it didn&amp;#39;t work out. It always comes a time when decisions I disagree are made based on what the majority thinks.&lt;/p&gt;

&lt;p&gt;I believe democracy is a great tool, and probably the best decision is that made by the most people. But I&amp;#39;m a arrogant motherfucker. If I disagree about something with my partners, I&amp;#39;ll assume they&amp;#39;re wrong and I&amp;#39;m right. And if I&amp;#39;m wrong, I want reality tells me so. I don&amp;#39;t want to do something I don&amp;#39;t believe just because it&amp;#39;s what most people want.&lt;/p&gt;

&lt;p&gt;But when you have partners you can&amp;#39;t act like that. So quickly I find myself working on something that no longer represents my vision, which makes me lose the sense of ownership of the project. Then I lose the interest, stop caring about it, and eventually quit. This is basicaly a recipe for wasting time.&lt;/p&gt;

&lt;p&gt;I already work on projects where I don&amp;#39;t have control over the decisions. It&amp;#39;s called day job. If I invest my already little free time to work on something, I want to make sure it represents my approach on a particular subject. The only kind of compromise I&amp;#39;m willing to do is that pushed by paying customers.&lt;/p&gt;

&lt;p&gt;That&amp;#39;s why I believe I have to work alone on any attempt to create a product. At least for now.&lt;/p&gt;
</content>
    </entry>
  
    <entry>
      <title>Small is not enough, think tiny!</title>
      <link href="http://blog.elomarns.com/small-is-not-enough-think-tiny" />
      <updated>2013-09-26T00:00:00-07:00</updated>
      <id>http://blog.elomarns.com/small-is-not-enough-think-tiny</id>
      <content type="html">&lt;p&gt;Like many other software developers, I was inspired by the success of &lt;a href=&quot;http://37signals.com/&quot;&gt;37signals&lt;/a&gt; and similar companies. I read their stories and they immediately resonated in me. They&amp;#39;re succeeding doing the same thing I do for living: writing code. So I decided to walk on the same road. I decided to build my own products. It&amp;#39;s easy to someone used to write software all day. Or at least it seemed to be.&lt;/p&gt;

&lt;p&gt;The hard truth I&amp;#39;ve discovered about myself is that I&amp;#39;m not like the guys on 37signals. I&amp;#39;m lazy and a world class procrastinator. So I just can&amp;#39;t try to create products like they do. They do big stuff, and big stuff takes a lot of time. I can&amp;#39;t afford such a long cycle of reward. I need it done fast. I need to see something as soon as possible, so I can feel some level of achievement. Otherwise I lose the interest on a couple of weeks.&lt;/p&gt;

&lt;p&gt;Obviously I should do what any adult would do: fight against the problem and grow up as a person and as a developer. But it would takes too much time and effort, and these things doesn&amp;#39;t fit well with someone who describes himself as lazy. So I&amp;#39;ve decided/realized that big products aren&amp;#39;t my thing. At least not for now. I have to begin with something really small. Something I can build on a week or a little bit more. Something tiny.&lt;/p&gt;

&lt;p&gt;There are other advantages on doing a tiny product besides the fact that it&amp;#39;s something I know I can finish:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The risk is also tiny, so if I end up failing I don&amp;#39;t lose much of my time;&lt;/li&gt;
&lt;li&gt;I can try many tiny products, and their combined profit can make a big difference;&lt;/li&gt;
&lt;li&gt;I&amp;#39;ll always starting something new, and new stuff is always exciting.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;On the other hand, it&amp;#39;s hard to find profitable tiny problems to solve. But it&amp;#39;s possible, as &lt;a href=&quot;http://blog.idonethis.com/post/59489601294/how-we-got-to-1-000-in-recurring-revenue&quot;&gt;the guys behind iDoneThis have recently proven&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;I still don&amp;#39;t have any feedback to share on how I&amp;#39;m going with this, since I didn&amp;#39;t start my first tiny product yet. But I hope at least to be able to finish something and release it to the world. It would be a victory by itself to me.&lt;/p&gt;
</content>
    </entry>
  
    <entry>
      <title>Here we go again!</title>
      <link href="http://blog.elomarns.com/here-we-go-again" />
      <updated>2013-09-13T00:00:00-07:00</updated>
      <id>http://blog.elomarns.com/here-we-go-again</id>
      <content type="html">&lt;p&gt;Hello!&lt;/p&gt;

&lt;p&gt;First of all, welcome to what is probably the first post of my sixth blog! Yeah, I&amp;#39;m kind of a serial blogger, except I never get into the phase where you actually have an audience, since I always delete my blogs after a few posts. Pretty stupid, I know. But this time it&amp;#39;s for real, although I&amp;#39;ve probably said the same about almost all my previous blogs.&lt;/p&gt;

&lt;p&gt;Anyway if you&amp;#39;re still here even after I completely destroy my credibility as a serious blogger, it&amp;#39;s worth to highlight what I&amp;#39;ll write about here: absolutely anything. Are you seeing that &amp;quot;Elomar&amp;#39;s Random Thoughts&amp;quot; above? That&amp;#39;s not just to be cool. I really don&amp;#39;t have any focus here. I&amp;#39;ll post about absolutely anything that interest me at any given moment. In other words, this is really a personal blog. But if you&amp;#39;re a software developer as I am, there&amp;#39;s a good chance you&amp;#39;ll find something here for you.&lt;/p&gt;

&lt;p&gt;And... that&amp;#39;s all! Or nothing, in this case. Anyway I see you on the next post!&lt;/p&gt;
</content>
    </entry>
  
</feed>