Permalink
Switch branches/tags
Nothing to show
Find file
Fetching contributors…
Cannot retrieve contributors at this time
333 lines (319 sloc) 21.2 KB
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Articles | Benedikt Deicke - Software Engineer</title>
<link href="http://feeds.feedburner.com/benediktdeicke" rel="alternate" title="Atom Feed" type="application/atom+xml">
<link href="http://benediktdeicke.com/" rel="canonical">
<link href="https://plus.google.com/u/0/104775472587527890320?rel=author" rel="author">
<meta content="I am Benedikt Deicke, a freelance software engineer focused on web applications using Ruby on Rails and JavaScript. Additionally I am developing several Open Source projects and enjoying photography in my spare time." property="description">
<meta content="Articles | Benedikt Deicke - Software Engineer" property="og:title">
<meta content="http://benediktdeicke.com/" property="og:url">
<meta content="website" property="og:type">
<link href="stylesheets/application.css" media="screen" rel="stylesheet" type="text/css">
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js" type="text/javascript"></script>
<script src="javascripts/application.js" type="text/javascript"></script>
</head>
<body class="home index">
<header>
<div id="logo">
<a href="/">Benedikt Deicke</a>
<span>(Software Engineer)</span>
</div>
<nav>
<ul>
<li><a class="active" href="/">Home</a></li>
<li><a href="/services">Services</a></li>
<li><a href="/portfolio">Portfolio</a></li>
<li><a href="/archives">Archives</a></li>
<li><a href="/contact">Contact</a></li>
</ul>
</nav>
</header>
<section>
<div class="wrapper">
<aside>
<header>About</header>
<p>I'm <a href="https://twitter.com/benediktdeicke">Benedikt Deicke</a> and
I'm building user focused web applications using
Ruby on Rails and JavaScript. Additionally I'm developing
several <a href="https://github.com/benedikt">Open Source</a> projects
and enjoying photography in my spare time.
Feel free to <a href="/contact">get in touch with me</a>!</p>
<header>Recent articles</header>
<ul class="recent">
<li><a href="/2017/01/year-in-review/">2016 in Review</a></li>
<li><a href="/2016/01/year-in-review/">2015 in Review</a></li>
<li><a href="/2015/07/launching-a-product/">Launching a product, in just 3652 days</a></li>
<li><a href="/2015/01/the-tools-that-help-me-build-my-product/">The tools that help me build my product</a></li>
<li><a href="/2015/01/reading-list-2014/">Reading List 2014</a></li>
</ul>
<header>Tags</header>
<ul class="tags">
<li><a rel="tag" href="/linux/">Linux</a></li>
<li><a rel="tag" href="/server/">Server</a></li>
<li><a rel="tag" href="/howto/">HowTo</a></li>
<li><a rel="tag" href="/ruby/">Ruby</a></li>
<li><a rel="tag" href="/rails/">Rails</a></li>
<li><a rel="tag" href="/activerecord/">ActiveRecord</a></li>
<li><a rel="tag" href="/processing/">Processing</a></li>
<li><a rel="tag" href="/rspec/">RSpec</a></li>
<li><a rel="tag" href="/javascript/">JavaScript</a></li>
<li><a rel="tag" href="/touch/">Touch</a></li>
<li><a rel="tag" href="/other/">Other</a></li>
<li><a rel="tag" href="/capistrano/">Capistrano</a></li>
<li><a rel="tag" href="/resources/">Resources</a></li>
<li><a rel="tag" href="/bootstrapping/">Bootstrapping</a></li>
</ul>
</aside>
<div class="hfeed" itemscope="itemscope" itemtype="http://schema.org/Blog">
<article class="hentry" itemprop="blogPost" itemscope="itemscope" itemtype="http://schema.org/BlogPosting">
<h1 class="entry-title" itemprop="name"><a title="2016 in Review" itemprop="url" rel="bookmark" href="/2017/01/year-in-review/">2016 in Review</a></h1>
<div class="meta">
<time class="updated published" datetime="2017-01-04T00:00:00Z" itemprop="datePublished">Posted on January 04, 2017</time>
— Tagged with:
<a itemprop="articleSection" rel="tag" href="/bootstrapping/">Bootstrapping</a>, <a itemprop="articleSection" rel="tag" href="/other/">Other</a>
— Written by
<span class="author" itemprop="author">
<span class="vcard">
<span class="fn">Benedikt Deicke</span>
</span>
</span>
</div>
<div class="entry-summary" itemprop="articleBody">
<p>A year ago, I published my first <a href="http://benediktdeicke.com/2016/01/year-in-review/">Year in Review</a> post. I did not publish anything since that review and therefore was a little hesitant about writing one for 2016. It was a tweet by Jamie Lawrence that convinced me to write this review:</p>
<blockquote>
<p>“Year in review” posts are great way of rewriting history, and a terrible way to compare yourself with others – <a href="https://twitter.com/ideasasylum/status/814447889351143424">Jamie Lawrence</a></p>
</blockquote>
<p>However, my intention isn't to...</p>
</div>
<a class="read-more" href="/2017/01/year-in-review/">→ Read the full article</a>
</article>
<article class="hentry" itemprop="blogPost" itemscope="itemscope" itemtype="http://schema.org/BlogPosting">
<h1 class="entry-title" itemprop="name"><a title="2015 in Review" itemprop="url" rel="bookmark" href="/2016/01/year-in-review/">2015 in Review</a></h1>
<div class="meta">
<time class="updated published" datetime="2016-01-04T00:00:00Z" itemprop="datePublished">Posted on January 04, 2016</time>
— Tagged with:
<a itemprop="articleSection" rel="tag" href="/bootstrapping/">Bootstrapping</a>, <a itemprop="articleSection" rel="tag" href="/other/">Other</a>
— Written by
<span class="author" itemprop="author">
<span class="vcard">
<span class="fn">Benedikt Deicke</span>
</span>
</span>
</div>
<div class="entry-summary" itemprop="articleBody">
<p>This is the first time I’m writing a “Year in Review” post. In the past, I wasn’t sure about the value of me writing a post like this. However, I always liked to read similar posts by people I know. I hope there’s something in this post that is of value to you, or at least inspires you in some way or another.</p>
<p>Let me introduce myself: I’m Benedikt Deicke. I’m currently running two businesses side...</p>
</div>
<a class="read-more" href="/2016/01/year-in-review/">→ Read the full article</a>
</article>
<article class="hentry" itemprop="blogPost" itemscope="itemscope" itemtype="http://schema.org/BlogPosting">
<h1 class="entry-title" itemprop="name"><a title="Launching a product, in just 3652 days" itemprop="url" rel="bookmark" href="/2015/07/launching-a-product/">Launching a product, in just 3652 days</a></h1>
<div class="meta">
<time class="updated published" datetime="2015-07-15T00:00:00Z" itemprop="datePublished">Posted on July 15, 2015</time>
— Tagged with:
<a itemprop="articleSection" rel="tag" href="/bootstrapping/">Bootstrapping</a>, <a itemprop="articleSection" rel="tag" href="/other/">Other</a>
— Written by
<span class="author" itemprop="author">
<span class="vcard">
<span class="fn">Benedikt Deicke</span>
</span>
</span>
</div>
<div class="entry-summary" itemprop="articleBody">
<p>Today, I launched <a href="http://stagecms.com">Stage</a>, a content management system, designed for band websites. As of today, it’s out there for everyone to see and use. It’s already making 307€ in monthly recurring revenue and hosting the websites of five bands, including those of internationally known bands like <a href="http://nightwish.com">Nightwish</a>, <a href="http://epica.nl">Epica</a>, and <a href="http://sonataarctica.info">Sonata Arctica</a>.</p>
<p>This is a pretty huge deal for me personally. I love building software products...</p>
</div>
<a class="read-more" href="/2015/07/launching-a-product/">→ Read the full article</a>
</article>
<article class="hentry" itemprop="blogPost" itemscope="itemscope" itemtype="http://schema.org/BlogPosting">
<h1 class="entry-title" itemprop="name"><a title="The tools that help me build my product" itemprop="url" rel="bookmark" href="/2015/01/the-tools-that-help-me-build-my-product/">The tools that help me build my product</a></h1>
<div class="meta">
<time class="updated published" datetime="2015-01-30T00:00:00Z" itemprop="datePublished">Posted on January 30, 2015</time>
— Tagged with:
<a itemprop="articleSection" rel="tag" href="/bootstrapping/">Bootstrapping</a>, <a itemprop="articleSection" rel="tag" href="/resources/">Resources</a>
— Written by
<span class="author" itemprop="author">
<span class="vcard">
<span class="fn">Benedikt Deicke</span>
</span>
</span>
</div>
<div class="entry-summary" itemprop="articleBody">
<p>As a single founder, my time is valuable. I have to split my time between working for consulting clients, doing paperwork and acquisition, and working on my product <a href="http://stagecms.com">Stage</a>. I wouldn’t get anything done, without several tools I heavily rely on. </p>
<p>In the following, I want to share the most important products, that help me bootstrap my own product. Hopefully, you’ll get some insights into my toolset...</p>
</div>
<a class="read-more" href="/2015/01/the-tools-that-help-me-build-my-product/">→ Read the full article</a>
</article>
<article class="hentry" itemprop="blogPost" itemscope="itemscope" itemtype="http://schema.org/BlogPosting">
<h1 class="entry-title" itemprop="name"><a title="Reading List 2014" itemprop="url" rel="bookmark" href="/2015/01/reading-list-2014/">Reading List 2014</a></h1>
<div class="meta">
<time class="updated published" datetime="2015-01-02T00:00:00Z" itemprop="datePublished">Posted on January 02, 2015</time>
— Tagged with:
<a itemprop="articleSection" rel="tag" href="/resources/">Resources</a>, <a itemprop="articleSection" rel="tag" href="/other/">Other</a>
— Written by
<span class="author" itemprop="author">
<span class="vcard">
<span class="fn">Benedikt Deicke</span>
</span>
</span>
</div>
<div class="entry-summary" itemprop="articleBody">
<p>I’ve always been a fan of <a href="http://www.paperplanes.de/2014/12/30/reading-list-2014.html">Mathias Meyer’s reading lists</a>. They’re one of my go-to resources to discover interesting books to read. While I didn’t read nearly as many books as he did, I wanted to share the books read in 2014 in the same vein. So here it is: my reading list of 2014!</p>
<h2 id="toc_0"><a href="http://www.amazon.de/gp/product/0670919519/ref=as_li_tl?ie=UTF8&amp;camp=1638&amp;creative=6742&amp;creativeASIN=0670919519&amp;linkCode=as2&amp;tag=beneddeick-21&amp;linkId=YJ5MC7EYAWZJ7ZZB">The Personal MBA</a></h2>
<p>Josh Kaufman’s book gives an birds-eye view about all business related topics. He covers value creation...</p>
</div>
<a class="read-more" href="/2015/01/reading-list-2014/">→ Read the full article</a>
</article>
<article class="hentry" itemprop="blogPost" itemscope="itemscope" itemtype="http://schema.org/BlogPosting">
<h1 class="entry-title" itemprop="name"><a title="ActionWidgets: Rails helpers on steroids" itemprop="url" rel="bookmark" href="/2013/05/action-widgets-rails-helpers-on-steroids/">ActionWidgets: Rails helpers on steroids</a></h1>
<div class="meta">
<time class="updated published" datetime="2013-05-21T00:00:00Z" itemprop="datePublished">Posted on May 21, 2013</time>
— Tagged with:
<a itemprop="articleSection" rel="tag" href="/howto/">HowTo</a>, <a itemprop="articleSection" rel="tag" href="/rails/">Rails</a>
— Written by
<span class="author" itemprop="author">
<span class="vcard">
<span class="fn">Benedikt Deicke</span>
</span>
</span>
</div>
<div class="entry-summary" itemprop="articleBody">
<p>More than once writing view code for a Rails application ends up with a messy template file. The separation of structure and style doesn't always work out as intended. Frameworks like Bootstrap force you to use nested structures and lots of class attributes. The view code ends up with a lot of duplication and is hard to read as a result. You'll get away with that for a while, constantly fearing the next redesign…</p>
<p></p>
</div>
<a class="read-more" href="/2013/05/action-widgets-rails-helpers-on-steroids/">→ Read the full article</a>
</article>
<article class="hentry" itemprop="blogPost" itemscope="itemscope" itemtype="http://schema.org/BlogPosting">
<h1 class="entry-title" itemprop="name"><a title="I'm going freelance" itemprop="url" rel="bookmark" href="/2013/02/i-am-going-freelance/">I'm going freelance</a></h1>
<div class="meta">
<time class="updated published" datetime="2013-02-25T00:00:00Z" itemprop="datePublished">Posted on February 25, 2013</time>
— Tagged with:
<a itemprop="articleSection" rel="tag" href="/other/">Other</a>
— Written by
<span class="author" itemprop="author">
<span class="vcard">
<span class="fn">Benedikt Deicke</span>
</span>
</span>
</div>
<div class="entry-summary" itemprop="articleBody">
<p>More than two years ago, I joined <a href="https://flinc.org">flinc</a> as a Rails developer. During this time, I helped building, launching and maintaining the realtime ride sharing network. From april on, I'm going to work as a freelance software engineer. It's not totally new for me, but it's the first time it'll be my main source of income.</p>
<p>Besides doing freelance software development work, I'm planning to focus more on my...</p>
</div>
<a class="read-more" href="/2013/02/i-am-going-freelance/">→ Read the full article</a>
</article>
<article class="hentry" itemprop="blogPost" itemscope="itemscope" itemtype="http://schema.org/BlogPosting">
<h1 class="entry-title" itemprop="name"><a title="What you did not know about Capistrano, yet" itemprop="url" rel="bookmark" href="/2013/02/what-you-did-not-know-about-capistrano-yet/">What you did not know about Capistrano, yet</a></h1>
<div class="meta">
<time class="updated published" datetime="2013-02-14T00:00:00Z" itemprop="datePublished">Posted on February 14, 2013</time>
— Tagged with:
<a itemprop="articleSection" rel="tag" href="/ruby/">Ruby</a>, <a itemprop="articleSection" rel="tag" href="/rails/">Rails</a>, <a itemprop="articleSection" rel="tag" href="/capistrano/">Capistrano</a>
— Written by
<span class="author" itemprop="author">
<span class="vcard">
<span class="fn">Benedikt Deicke</span>
</span>
</span>
</div>
<div class="entry-summary" itemprop="articleBody"><p>Like any other build process, deploying Rails applications should be a quick and easy task. You should be able to deploy everything to your server with just one command. There are several tools available for this task. One of them is <a href="https://github.com/capistrano/capistrano">Capistrano</a>, which is probably the oldest and by far the most popular deployment tool in the Rails community. Unfortunately the <a href="https://github.com/capistrano/capistrano/wiki">documentation</a> is still not great and...</p></div>
<a class="read-more" href="/2013/02/what-you-did-not-know-about-capistrano-yet/">→ Read the full article</a>
</article>
<article class="hentry" itemprop="blogPost" itemscope="itemscope" itemtype="http://schema.org/BlogPosting">
<h1 class="entry-title" itemprop="name"><a title="Cleaner specs with custom RSpec example groups" itemprop="url" rel="bookmark" href="/2013/01/custom-rspec-example-groups/">Cleaner specs with custom RSpec example groups</a></h1>
<div class="meta">
<time class="updated published" datetime="2013-01-09T00:00:00Z" itemprop="datePublished">Posted on January 09, 2013</time>
— Tagged with:
<a itemprop="articleSection" rel="tag" href="/howto/">HowTo</a>, <a itemprop="articleSection" rel="tag" href="/ruby/">Ruby</a>, <a itemprop="articleSection" rel="tag" href="/rspec/">RSpec</a>
— Written by
<span class="author" itemprop="author">
<span class="vcard">
<span class="fn">Benedikt Deicke</span>
</span>
</span>
</div>
<div class="entry-summary" itemprop="articleBody"><p>Sometimes, when testing your code with RSpec, you'll notice similarities and duplication between your spec files. Most of these will involve setup that doesn't say much about the object under test. There's something that helps you to reduce this duplication: Custom example groups! RSpec itself (rspec-rails) <a href="https://github.com/rspec/rspec-rails/tree/master/lib/rspec/rails/example">uses example groups</a> for the different types of tests for models, controllers, helpers and...</p></div>
<a class="read-more" href="/2013/01/custom-rspec-example-groups/">→ Read the full article</a>
</article>
<article class="hentry" itemprop="blogPost" itemscope="itemscope" itemtype="http://schema.org/BlogPosting">
<h1 class="entry-title" itemprop="name"><a title="I'm joining flinc as a Rails developer" itemprop="url" rel="bookmark" href="/2010/11/i-m-joining-flinc-as-a-rails-developer/">I'm joining flinc as a Rails developer</a></h1>
<div class="meta">
<time class="updated published" datetime="2010-11-01T00:00:00Z" itemprop="datePublished">Posted on November 01, 2010</time>
— Tagged with:
<a itemprop="articleSection" rel="tag" href="/other/">Other</a>
— Written by
<span class="author" itemprop="author">
<span class="vcard">
<span class="fn">Benedikt Deicke</span>
</span>
</span>
</div>
<div class="entry-summary" itemprop="articleBody">
<p><a href="http://flinc.org"><img src="/assets/2010/11/flinc.png" style="float: right"></a></p>
<p>Today’s my first day as a full-time employee at
<a href="http://flinc.org">flinc</a> where I’ll mainly be doing Ruby on Rails
development. I got in contact with <a href="http://twitter.com/m_ic">Michael</a> a
few months back when he joined the <a href="http://webdevfulda.de">Web Development
Fulda</a> group on Xing. We met at the meetup in
september and a few days later he invited me to their offices in
Dieburg. I was impressed by their product and the spirit of the
<a href="http://flinc.org/theflincteam">team</a>, so I agreed on
doing trial work for a week. Obviously they liked me and my work and
offered me a job.</p>
<p></p>
</div>
<a class="read-more" href="/2010/11/i-m-joining-flinc-as-a-rails-developer/">→ Read the full article</a>
</article>
</div>
</div>
</section>
<footer>
<div class="wrapper">
<ul>
<li><a href="https://twitter.com/benediktdeicke">Twitter</a></li>
<li><a href="https://github.com/benedikt">GitHub</a></li>
<li><a href="https://xing.com/profile/Benedikt_Deicke">Xing</a></li>
<li><a href="http://coderwall.com/benedikt">CoderWall</a></li>
<li><a href="https://speakerdeck.com/u/benedikt">Speaker Deck</a></li>
<li><a href="http://stackoverflow.com/users/1109852/benedikt-deicke">Stack Overflow</a></li>
</ul>
<p class="vcard" itemscope="itemscope" itemtype="http://schema.org/Person">
© 2017
<span itemprop="name" class="fn">Benedikt Deicke</span>,
<span itemprop="address" itemscope itemtype="http://schema.org/PostalAddress" class="adr">
<span itemprop="streetAddress" class="street-address">Heinrich-Hertz-Str. 6</span>,
<span itemprop="postalCode" class="postal-code">64295</span> <span class="city">Darmstadt</span>,
<span itemprop="addressCountry" class="country-name">Germany</span>
</span> |
<a href="/imprint">Imprint</a>
</p>
</div>
</footer>
<script>
var _gaq = _gaq || [];
_gaq.push(['_require', 'inpage_linkid', '//www.google-analytics.com/plugins/ga/inpage_linkid.js']);
_gaq.push(['_setAccount', 'UA-2590585-3']);
_gaq.push(['_gat._anonymizeIp']);
_gaq.push(['_setAllowLinker', true]);
_gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
</script>
<script>
var _dcq = _dcq || [];
var _dcs = _dcs || {};
_dcs.account = '6112910';
(function() {
var dc = document.createElement('script');
dc.type = 'text/javascript'; dc.async = true;
dc.src = '//tag.getdrip.com/6112910.js';
var s = document.getElementsByTagName('script')[0];
s.parentNode.insertBefore(dc, s);
})();
</script>
</body>
</html>