2015-11-15

More about bullies

This week I read the reaction of Avdi to the rant of Linus last week. He proposes a short but insightful angle by just naming it ‘bullying’. It rejoins the damage that I consider the coder-hero culture brings to our industry.

Certainly the creative process of writing software attract creative people. They have strong personalities, some have tendencies to mild autism. They move mountains and their pride make them work day and night to achieve unbelievable things.

This is good and well, but on the long run, now that we are passing 2 generations of coders, we know that it’s not sustainable on the long run. Plus, it has a disastrous impact on team building. No pyramid was built by a single hero.

Incidentally I also read an interesting article about Why computer programmers need to stop calling themselves engineers already. Even if I can’t clearly explain how this is related, I have the feeling it’s talking about something that is in the same area.

2015-11-08

Packaging a gem for Debian

Recently I had to package a gem for debian as a .deb. As a matter of fact, there is a lot of companies that are not in the ruby ecosystem and they rely on things they trust rather than rubygems. For a while debian was way behind on the inclusion of ruby and versions were outdated there. So a parallel distribution ecosystem had to be created. Now we have rvm, rbenv, or chruby for ruby and bundler and rubygems for the packages. But where I work, they package everything as debian packages. So I had to adapt.

So I went have a look at the debian ruby team and checked out the tools. That gem2deb tool is pretty convenient. I am using debian for a while but never really had to package anything. The debian community process is a bit complicated and they are not very inclusive. Compared to the ease of uploading any gem to rubygems, it’s quite a fortress, and people in the process are not very welcoming.

Maybe it’s generational. Debian started before sourceforge existed, they are rooted in a community tradition that are very exclusive and a bit elitist. But technology changes faster than people, obviously. Younger communities bootstrap in a more fluid environment.

I’m not sure it is related but maybe it is, there was another epic [Linus Hit][liushit] recently. Well, all those things put in perspective the niceness of the ruby community. Really, cherish it and enjoy it, it’s precious.

2015-11-01

The power of DSL

While I was playing with react.rb and exploring opal, I felt in a totally different world. The power of the DSL already prove its shine on various occasions. I got to experience it in activeadmin, rspec, and puppet (but I kind of dislike the one in puppet).

As I’m also writing some python, I can see a real difference in expressibility that can be found in ruby. Really, ruby is a maker tool. Like a toolbox for making new programming languages, using meta-programming, lambda and other goodies. This is what, in my opinion, makes ruby unique. Beyond the elegance of its syntax, it empowers developers with the ability to write dedicated programming language for any specific use. And this, I didn’t find in python.

2015-10-25

DST sucks, Thunderbird too, Gmail too

This week-end they changed time in France. As I work with those guys to cover the watching of servers, then I need to change time too. This is totally lame. In the context of largely distributed teams, DST is heresy. It happens in the US too, but not even at the same time. Man I hate DST. I’m happy we don’t have that in Taiwan.

Thunderbird sucks too

Despite the respect I have for mozilla products and for their efforts toward the community, I have to say that I have been using thunderbird for a while and I don’t like it. There is some lack of customability in there, it eats a whole lot of memory and it’s kinda slow sometimes. I have been considering getting back to mutt, which is a totally different category of mail client.

But I found claws, and trying it for a few days on my various mailboxes with hundreds of thousands of mails, and it is a very good feeling. It’s much more transparent and hackable and stays in the same category of the clickable mail client as thunderbird. I’m not sure I will stick to claws, maybe I will get back to mutt that I have been used so many years before. But I sure will give that ‘email client that bites’ a try for a while.

Gmail sucks more

I still can’t figure out why people use gmail for reading their mail. I mean, you leave management of your mail to google, you know what they do with it. You also want to give them information about how you read your mail? I mean, using a webmail, first, should be a fallback. But it’s mystery for nobody that google business is in profiling people. It blasts me how people can trust them blindly.

2015-10-11

Slack overflow

Okay I reckon I’m very old school. I began on the net with irc and I still stick to it. I have been confused by the trend that make people use Twitter like if it was some kind of real-time interactive medium. I have watched skype becoming unavoidable, and despicable. I hope Telegram will kill it, honestly.

I have been using hipchat and slack for work. Hipchat was really cool, but slack came later on and seemed more modern and featurefull. But it didn’t have a linux client for a while. So I didn’t really played much with it. But now there is a linux client, and it seems that there is an ecosystem nuilding up around slack. As they don’t charge for normal usage until you need many integrations with various services, it’s pretty easy for anyone to create some new slack team.

Slack was first designed for teams, and those teams are gathered by invite only. But there are many ways to smooth it up to create some open discussion area that could be compared to irc. But in a way that it includes features that on irc I had to settle myself. For example for sharing code on irc you typically use some pastebin, jsfiddle, or other service of the same kind. In slack code can be pasted in directly or uploaded as a file. For keeping some kind of permanence I always use weechat in a screen on a remote server. That way I never disconnect form irc and I can backlog when I get back. But this is not for everybody and slack has the same kind of feature. But the most noticeable feature in slack is the mobile integration. It beats irc without a doubt.

Given those benefits, various communities begin to switch from irc to slack. There are even people building up a business creating communities on slack. Check slacklist or the chat directory. Some of those slack teams are open, some others are accessible after a review process, some others you have to pay a fee to access them.

I would not say that slack replaces irc, to be honest, even if it fulfills some similar goal. It’s a totally different beast. Plus, that’s a third party that keeps all your logs. If security of your content is an issue, you should rather have an internal irc server or try an open source self-hosted slack alternative.

Currently I got 6 groups on my slack client, including the Greenruby slack group. You can ask for an invite at slack@greenruby.org it’s totally open.

2015-09-13

Rubyconf TW

So these last 2 days we went to RubyConfTW here in Taipei, like every year. At that occasion I kinda forced my buddies to take part in this rant section. So, that occasion of meeting the ruby community was as usual very enjoyable. Year after year we see the same people, the community is solid and persistent.

Like last years Matz was here and he talked about ruby 3 and, that was a surprise to me, he talked about getting rid of the GIL very soon. That GIL topic has been a taboo for so many years. Getting rid off it can change the position of ruby in the family of the major scripting languages. He also defined laziness as one of the 3 required characteristics of a good coder. I’m not sure there is anything mainstream about those 3 qualities but for a long time I had my set of 3 requirements to evaluate a good coder and laziness was in it. maybe I will develop more about it in another rant.

During this conference I also had the occasion to hear a lot of direct feedback from friends of Green Ruby. For example we have an irc channel but many people are not that comfortable with that chat system from another century and would prefer a slack room. As a matter of fact we have such a room, but we forgot about it for the past year. It’s alive again, feel free to send a request for invite to news at greenruby.org to join http://greenruby.slack.com. It’s open to everybody.

Rubyconftw by xenor

Hey I’m xenor and this is my first rant in Green Ruby News about (and not about) rubyconftw.

I work in a ruby shop and manage a couple of people, and I am recently feeling burned-out. It affects motivation and productivity. I am in a position which involves watching over colleagues output. But I also have my own coding projects ongoing.

At first it’s great and challenging. But after half a year, it starts to bite me back. I get tired and anxious about not meeting my goal at the end of the day while checking others progress. I also need more breaks than usual. The typical burn-out syndrome.

Rubyconf gave me a break so that I can rethink what I was doing and how I can evaluate things around me. During the conference, I found some time to do side project. This really helps and re-motivates me on programming (I believe this could be called ‘Conference Driven Development’)

You might wonder why I didn’t say anything about the talks. Actually, talks are just as great as all other conferences, and can be watched on the recordings that they will post soon. But the most important part is really the atmosphere of encouragement to try and learn something new.

Rubyconftw by tysliu

Greetings. This is tysliu and this is also my first rant and my experience from going to 2015 Rubyconf TW.

The main benefit from attending rubyconf this year is that I said hello to more people. I met past colleagues and also new people. It feels nice to see familiar faces and catch up.

The most interesting talk for me this years was tenderlove’s talk. It was about how he attacked the issue of making Rails HTTP2 friendly. Basically, Rails at the moment is not http2 compatible. This is due the the current architecture of Rails and implementation of rack middlewares. During the talk he was able to demo a prototype Rails that is H2 friendly.

The best news for Rails developers is that there are plans to for making HTTP 2 compatibility available in Rails 5.

2015-09-06

Meet at rubyconf

Next friday we will be at rubyconf Taiwan. Last year there was around 300 attendees and there is 256 this year. But maybe there will be more last minute registration, there is still some spots available (well just 14 at this time). I will also be at the pre-conf evening on wednesday. Good time to meet if you are in Taiwan (we have 37 subscribers there).

Some stats on greenruby

From time to time I check an export of the subscribers list and do some stats out of curiosity. As of today there are 1466 subscribers, and more than half in the US (844) all the rest are in 88 other countries (most in India, UK, France and Taiwan, in that order). In the US most people are from New-York, just a little more than Los Angeles, and Monticello in Kentucky. I wonder what there is so special in that city of less than 10k people. Maybe that’s a geo-location glitch? If not, please someone tell me what there is in that small and probably nice city. But if I had to bet, I would put my money on the glitch.

Every week there is a small number of new subscribers, especially during summer. But if you don’t really read or if you don’t care that much, please unsubscribe. I will certainly have to do some invitation to unsubscribe when we will reach around 2000, because mailchimp if free of charge only under that limit.

There are also a lot of unaccounted subscribers to the RSS feed, which is the most popular page on the website. But I don’t use feedburner or any kind of tracking so I don’t really know. And I kind of like it that way.

2015-08-31

The dimensions of coding

Today while wandering around in my weekly hunt for good links, my eye has been attracted by a post named Coding is three dimensional. It’s quite an interesting way to consider it. But the reason why it struck me is that it was missing the fourth dimension. That makes all the difference when you get years of coding. You know that time is a parameter.

Code don’t exist out of time. It has a past, perspective of a future, that both shape its current morphology. There are a lot of efforts to produce code analysis. But the real analyst is an historian and needs a systemic approach that includes time as a factor. We are still far from being able to automate that. In some ways, it’s a good news, we won’t be replaced by small scripts very soon.

The time factor is actually the essential element in the technical debt formula. Purist coders can’t cope with technical debt but if you have two onces of business man inside, it makes total sense. The tradeoff in technical quality versus fast deliverability only makes sense because the timing is critical. A mess is not a technical debt.

If coding was disconnected from the market, and if it was not a business or more like an art, maybe time would not be that critical. But even open source software is dependent on the market at one point or another. I fail to see how it could be different.

Honestly, I would prefer clean coding and no market tradeoff, but that’s just a dream.

2015-08-28

Moving to Hugo

As I love website pre-generation concept I have been using Jekyll and Octopress quite a lot. But now I wanted to give a try to Hugo.

Also, I have had various spaces of blogging in the past few years, so I thought I should just recenter everything in a unique place. There was an old blog on tumblr because I wanted to see how it was made. Then I had a period of time where I was publishing tips on the Faria Devtips website, which is down now. Then I also publish some rants every week on the Greenruby newsletter.

Only the last on is still active, so I will cross-post things from there to here, which should not be too hard as they are both markdown.

The first impression of Hugo is that there are still a lot of small weird things. But in some ways, I’m kind of happy about it, I guess I will try to fix some of those, that will be an occasion to play a little with golang.

2015-08-23

Just met Hugo

Some weeks ago I was talking about Octopress. I think pre-generation of websites is a very sensible approach. And I heard about Hugo for some time now. It’s like a cousin of Jekyll but writen in Go. The author of Middleman (another site generation engine) confessed in a recent podcast that he would try the Golang way if he had to start from scratch today.

I got interested into Hugo mostly because one of the side projects I’m working on. It involves a bunch of people that run on windows. Having a binary that runs everywhere is a big plus for a gGo solution. Installing ruby is possible on windows, but not really for noobs afaict.

Also, I want to check more Go projects. I have been playing in and out that language for a while now. Version 1.5 seems really great. So I upgraded my gvm and installed the thing. Well, I could havce just used the Hugo binary, but where is the fun in that?

My first impression is very comfortable. It took a lot of the principles form Jekyll. But it seems to have some extra options and concepts that may be a little more advanced and seem very promising. The theming system is especially cool. I will probably first port my own blog under Hugo before porting my other project.

As a matter of fact, that’s a while I’m considering that I never feed my blog, but I should copy the rants I write here in there. It can be fun to add a rake task in the greenruby publication process to also add a page in a nearby hugo repo and publish it at the same time.