|
Humility is not a very common trait with software architects. After having worked with a few awful architects and recently with a very pleasant one, I’ve compiled a few of my experiences in the way every architect loves: As a set of rules. Rule 0: Don’t assume stupidity It seems like some architects assume that developers, if left to their own devices, would behave like monkeys. In my experience, this is very rarely the case.
|
|
As a follow-up to my original article on recursion in Puppet , and in my attempt to Push Puppet (to its limit) , I’ll now attempt some more advanced recursion techniques in Puppet. In my original recursion example , the type does recurse, but the callee cannot return any value to the caller because it is a type, and not strictly a function. This limitation immediately limits the usefulness of this technique, but I’ll try to press o..
|
|
As a follow-up to my original article on recursion in Puppet , and in my attempt to Push Puppet (to its limit) , I’ll now attempt some more advanced recursion techniques in Puppet. In my original recursion example , the type does recurse, but the callee cannot return any value to the caller because it is a type, and not strictly a function. This limitation immediately limits the usefulness of this technique, but I’ll try to press o..
|
|
Kirill Zubovsky is the founder of Scoutzie, an online marketplace that connects designers and clients.
|
|
Back in May I wrote Nickelodeon’s Experiment where I talked about the network’s hit animated series Avatar: The Last Airbender and its sequel, Avatar: The Legend of Korra . Last week the latter’s show finished its second season with the final episode of “Book Two: Spirits”. In preparation for the third, I thought I would post a mid-series update. As with my last article on this topic, spoiler alert, I will give away big parts of the ..
|
|
I wrote this article for the Sidebolt company blog . Reposting it here for your reading pleasure! Our latest game Skyward Slots makes extensive use of JSON. We send Gigabytes of it flying back and forth haphazardly between client and server over a WebSocket connection. At first, we wrote code by hand to pack and unpack each message. Later on we decided that life is too short for that. In the beginning, we just dove into the JSON righ..
|
|
I wrote this article for the Sidebolt company blog . Reposting it here for your reading pleasure! We publish our games on both Mac and iOS. Since UIKit is not available on Mac, we have to build all of our UI by hand in Cocos2D. One of the hardest parts to get right was emulating the UIScrollView bouncy scroll formula. Here it is in action: There are tons of implementations available in nearly every language and framework, but few of..
|
|
Many years ago there was a Rails app. It started with things. These things were actually blueprints for other things. The other things needed many associated parts, and parts of parts. How many? The blueprints knew. The blueprints absolutely had to have an admin interface, but changing the blueprints would cause a chain reaction on things and parts. Every modification to the things and their blueprints permeated throughout the coupled netwo....
|
|
The Raspberry Pi has only a single PWM output. The Dagu Rover 5 chassis has 4 motors and 4 optical encoders that need reading as well. So my approach was to get a PWM servo/logic controller that could control the Dagu Motor Controller and additionally some servos for the camera pan/tilt.
|
|
Automated e2e testing- WebDriverJS, Jasmine and Protractor
-
engineering.wingify.com
-
12 years ago
-
eng
e2e or end-to-end or UI testing is a methodology used to test whether the flow of an application is performing as designed from start to…
|
|
As I’ve mentioned in previous posts, I run all my websites on a MiraBox– my nifty, low-power ARM server. As awesome as it is having a low-power server, it does make things more difficult. I’m a Ruby on Rails developer, and I run three websites on this thing, along with a gitolite installation so I can host my own code. However, I recently began a few projects collaborating with other people, and as the projects grow, gitolite is not the col..
|
If you are new to Ruby I suggest you first read my previous post which in short explains why you should not give up on learning Ruby. Starting with this post, I’ll be writing some tutorials covering the first steps you could follow in order to get familiar with both the language (Ruby) and the framework (Ruby on Rails). My posts will be based on my own experience so I hope that anyone new here can understand them easily. First things ....
|
If you are new to Ruby I suggest you first read my previous post which in short explains why you should not give up on learning Ruby. Starting with this post, I’ll be writing some tutorials covering the first steps you could follow in order to get familiar with both the language (Ruby) and the framework (Ruby on Rails). My posts will be based on my own experience so I hope that anyone new here can understand them easily. First things ....
|
|
One thing I’m really proud of is that when we launched Discourse, we had first class Internationalization (i18n) support ready to be used. Our first release only English, but thanks to our community we have 18 localizations of our software in progress! Here’s what Discourse looks like in Simplified Chinese: On the server side, Discourse uses Rails’ built in i18n support . It has been around for a long time and works easily so I wo..
|
|
Yesterday morning Brett Terpstra posted an article to his blog calling for open auditions to guest on his podcast Systematic. Like many, many others I’m sure, I made a submission. I briefly introduced myself then, in typical Systematic fashion, went on to my top three picks for the “show”. Looking to increase my chances of getting the spot, I decided to make an extra effort by posting an article here in case Brett decides to look for furt..
|
|
An interesting story made all the more absorbing by the model Amanda employed in stark contrast to the one nearly all writers in the circles I frequent employ. Whereas we hold the individual’s reputation on high — I read people, not websites — she takes the opposite approach in impersonally finding, occupying, and ultimately cashing out on an existing niche rather than create her own as I and many others are want to do. A thought-provokin..
|
|
This is a guest post from Tad Vizbaras from Etasoft in South Florida. There are a number of editors and IDEs for Go development. LiteIde, Vim, Emacs and GEdit just to name a few. Each developer has their own favorite editor for each language they work with. Some like full featured IDE environments while others prefer speed over features. My personal favorite editors for Go development at the moment are Vim and GEdit. GEdit co....
|
|
Freenas with Transmission and Couchpotato/Sick(-Beard, -Rage) as a DLNA-Server
-
www.zufallsheld.de
-
12 years ago
-
eng
I’m going to describe how to set up Freenas with the popular plugins couchpotato, sickBeard or sickRage and transmission to use them for downloading movies or series and streaming them via DLNA as well as mounting the storage on Linux. This post is also available in German! I integrated SABnzbd! You’ll find a how-to in my other blog post If you want to know how to setup Headphones, look here With this setup, I man....
|
|
I discovered an XSS flaw in a website a month ago and reported it to the owners. As a thank you they sent me a hat, a rather large american sized t-shirt and a pair of “DeFeet” socks (guaranteed to stay cooler and drier than any other brand). I didn’t expect them to ship something like that overseas...
|
|
I discovered an XSS flaw in a website a month ago and reported it to the owners. As a thank you they sent me a hat, a rather large american sized t-shirt and a pair of “DeFeet” socks (guaranteed to stay cooler and drier than any other brand). I didn’t expect them to ship something like that overseas...
|
|
Figure 1. Taken from my Wife’s office window, around 10am. The weather was great this week - crisp and autumnal, with beautiful sunshine all week. It snowed a little on the local mountains and Cypress Mountain has opened for (limited) Skiing already, using the lower temperatures to make lots of extra snow. Whistler also opened this week, along with Grouse. Figure 2. Taken from my Wife’s office window in the afternoon, during the Gold..
|
|
This year marked the first time I have taken any interest in reading long-form hardware and software reviews of any kind. Previously, as I described in Diary of a Convert , I rarely made it past the first few pages; this time around, however, I not only plowed through John Siracusa’s twenty-four page epic, but many others’ as well. I learned a great deal about Apple’s latest hardware and software offerings through this process, something..
|
|
Have you ever found yourself in this situation. You have a case statement inside of a for loop and you would like to break from both the case and for statements in a single call? var err error timeout := time.After(30 * time.Second) sigChan := make(chan os.Signal, 1) signal.Notify(sigChan, os.Interrupt) complete := make(chan error) go launchProcessor(complete) for { select { case <-sigChan: ....
|
|
Recently I’ve started building a remote-controllable rover. The main purpose of this is the exercise of controlling an embedded system and make actual things move with code.
|
|
Scaling Python/Django application with Apache and mod_wsgi
-
engineering.hackerearth.com
-
12 years ago
-
eng
HackerEarth is primarily based on Python & Django. And we use Apache with mod_wsgi for hosting the application. There is a general complaint that Apache sucks when it comes to hosting Python web applications. It’s said that it’s slow, bloated, uses lots of memory and doesn’t perform very well. It’s also said that it doesn’t handle a high number of concurrent requests. All that is true if you are not running the Python application in the ....
|
|
Uncle Bob Martin: Is the software industry trying to write the script for Hamlet by hiring a million monkeys to bang on keyboards? Perhaps we should rethink that strategy and hire one bard instead. Perhaps, instead of hoards of novices, we need a small team of professionals. http://blog.8thlight.
|
|
Ironically, one of the reasons that I started writing Puppet code, was so that I could spend more time designing and building, and less time writing documentation. I suppose I’m a victim of my success, because Puppet-Gluster has grown large enough to warrant its own documentation. So I gave in, and put together some documentation. It’s available as markdown , and, also as a pdf . As before, there is an examples/ directory which yo..
|
|
Ironically, one of the reasons that I started writing Puppet code, was so that I could spend more time designing and building, and less time writing documentation. I suppose I’m a victim of my success, because Puppet-Gluster has grown large enough to warrant its own documentation. So I gave in, and put together some documentation. It’s available as markdown , and, also as a pdf . As before, there is an examples/ directory which yo..
|
|
I think about my English classes almost every day when I sit down to write, and even some days when I don’t. I think about how much I hated them, how I dreaded each pointless class and similarly meaningless assignment, and then I think about the eternal debt of gratitude I owe those three teachers for seeing me through. Permalink.
|
|
So after a few months of Chinese holiday delays, my ErgoDox DIY keyboard kit has finally arrived. There are amazing videos of how to assemble the thing on youtube, and thankfully my roommate was an electrical engineering student at CU and lent me his soldering station. I've started the process of soldering extremely tiny surface mounted diodes to the printed circuit boards. All together the project will require over 300 solder joints by m....
|
|
To create image thumbnails from a PDF document, run this in a terminal window: $ convert -thumbnail x300 -background white -alpha remove input_file.pdf[0] output_thumbnail.png The parameters to convert do the following things: ParameterEffect-thumbnailSimilar to -resize, but optimized for speed and strips metadata.x300Make the thumbnail 300px tall, and whatever width maintains the aspect ratio.-background whiteSets the t....
|
|
I had the opportunity to give my RESTful WeB APIs and MongoDB Go For A Picnic talk at both MongoTorino and NoSQL Day . The folks at PUG Friuli where so nice to record all the NoSQL Day sessions, so here you have it: the full length video of yours truly speaking to a fully packed room crowded with 120 very attentive attendees. Unfortunately audio is horrible and while all MongoTorino talks were in english, NoSQL Day was an italian-o..
|
|
This post is rather outdated now, and so the details contained within are no longer valid. Read with caution. I recently came across the rather snazzy looking subscriber count button on the Smashing Magazine website. A quick Google revealed that these are no longer available after MailChimp redesigned their service . Boo! An example of the Smashing Magazine counter: So, a quick look through the coding on this Smashing Magazin..
|
|
Not on nginx, but still want your Tumblr blog in a subdirectory? Henrik Nyh has got your back . Have not personally used this, being a fan of nginx, but should at least be a good starting point to get you on your way.
|
|
The best Postgres feature you're not using – CTEs aka WITH clauses
-
www.craigkerstiens.com
-
12 years ago
-
eng
SQL by default isn’t typically friendly to dive into, and especially so if you’re reading someone else’s already created queries. For some reason most people throw out principles we follow in other languages such as commenting and composability just for SQL. I was recently reminded of a key feature in Postgres that most don’t use by @timonk highlighting it in his AWS Re:Invent Redshift talk. The simple feature actually makes SQL both re....
|
|
The best Postgres feature you're not using – CTEs aka WITH clauses
-
www.craigkerstiens.com
-
12 years ago
-
eng
SQL by default isn’t typically friendly to dive into, and especially so if you’re reading someone else’s already created queries. For some reason most people throw out principles we follow in other languages such as commenting and composability just for SQL. I was recently reminded of a key feature in Postgres that most don’t use by @timonk highlighting it in his AWS Re:Invent Redshift talk. The simple feature actually makes SQL both re....
|