yes, me too

about me   

Floor on things.

June 20, 2013 at 4:37am
11,655 notes
Reblogged from rubyetc
thefrogman:

By Ruby [tumblr | twitter | flickr]

thefrogman:

By Ruby [tumblr | twitter | flickr]

(via daaniedepaanie)

June 15, 2013 at 7:34pm
0 notes

crash course to svn for (former) git users

Generally I’m a Git girl, but as I now work for a company that uses Subversion as their version management tool, I needed to get into this whole svn for Mac thing. Now I had a coworker guiding me through, but there actually is a pretty neat guide to Subversion branching, merging and reintegrating out there, on web-rocker.de. I translated it in English if your knowledge of German is rusty or non-existent.

Let’s pretend our project, set on http://repo.domain.de/svn/projekt-x/, needs a new feature, an ‘easter egg’.

1. Let’s start a private branch
For our new feature we need a branch:
svn copy http://repo.domain.de/svn/projekt-x/trunk http://repo.domain.de/svn/projekt-x/branches/easter-egg -m "Creating private branch for feature easter egg"

2. Checking out your private branch
svn co http://repo.domain.de/svn/projekt-x/branches/easter-egg

3. Implementing some new, awesome features, and then
Remember to regularly commit your changes:
svn ci -m "add ..."

I like to keep my commit messages in present tense. That way the message describes what the diff does. I know there’s a lot of discussion about whether to use past or present tense, but it’s really what you an your coworkers or team mates decide on.

4. Merging your changes in the trunk
svn merge http://repo.domain.de/svn/projekt-x/trunk

5. Like, regularly
Repeat step 3 and 4 until your feature is ready to be released.

6. Integrating your branch in the trunk
Just checking in your trunk:
svn co http://repo.domain.de/svn/projekt-x/trunk

And reintegrating:

svn merge --reintegrate http://repo.domain.de/svn/projekt-x/branches/easter-egg

svn ci -m "Reintegrating private branch for feature easter egg into trunk"

7. Deleting a branch
To keep your repository nice and clean, we’ll have to delete the branch:
svn delete http://repo.domain.de/svn/projekt-x/branches/easter-egg -m "Deleting private branch for feature easter egg"

… And you’re done.

Some commands I find helpful:
svn up - updating your working directory
svn add * - adding all files to the remote (the equivalent of git add .)
svn ci -m "message" - writing a commit message the way I’m used to it
svn info - in case you forgot in which branch you’re ‘operating’.

Is SVN better than Git? No. The key difference to git is that it is decentralized. For someone who’s constantly on the go, and needs quick access to deploy changes to copy, a SVN Repository in a location you can’t reach, is kind of a downer. Next, I feel that branching and merging support is a lot better and it suits open source. But then again, SVN is kind of powerful and takes away the whole step of pushing code. Once you’ve committed your changes, it’s out there, in the branch. For companies working with inhouse developers only, it fits the requirements.

Screen Shot 2013-06-12 at 5.20.46 PM

What you also see are Git-SVN Bridges, where the central repository is a Subversion repo, but developers locally work with Git and the bridge then pushes their changes to SVN. Funky, huh? Check out what Scott Chacon (works at GitHub, author of Pro Git) has to say on the GitHub subversion bridge.

Ultimately, it’s about finding the right fit for your company or project. Happy committing! ;)

June 12, 2013 at 5:06pm
1,871 notes
Reblogged from jonyiveredesignsthings
jonyiveredesignsthings:

Jony Ive redesigns Apple logo.
Credit @TiBounise

jonyiveredesignsthings:

Jony Ive redesigns Apple logo.

Credit @TiBounise

2:32pm
1,220 notes
Reblogged from screenshotsofdespair
nevver:

Screenshots of Despair

nevver:

Screenshots of Despair

June 9, 2013 at 11:04am
1 note

Less is more

When I read that Bootstrap compiles notably faster with Less than Sass, and then that Less is implemented in JavaScript, I decided to check out this little language and the Less Framework successor, Frameless. Less is a dynamic stylesheet language extending CSS with programmy things like variables, mixins, operations and functions. First: Frameless. Frameless is the spiritual successor to Less Framework. It’s a much simpler idea, more flexible, and definitely easier to integrate. Just hit: git clone https://github.com/jonikorpi/Frameless.git

Next you will need Less support for your texteditor of choice:
for Sublime
for Vim
for Emacs
for Textmate


I stick to Textmate 2:
mkdir -p ~/Library/Application\ Support/TextMate/Bundles
cd ~/Library/Application\ Support/TextMate/Bundles
svn co http://svn.textmate.org/trunk/Review/Bundles/GetBundles.tmbundle/
#only if you want some more swag
git clone https://github.com/appden/less.tmbundle.git

Screen Shot 2013-06-07 at 9.48.38 PM

In your Textmate preferences, check the Less box in your bundles. Next: create a HTML document.
<!DOCTYPE html>
<html> <head>
<title>Less try it out</title>
<link rel="stylesheet/less" href="css/less/moreis.less" />
<script src="/js/vendor/less-1.3.0.min.js"></script><c/ode>
</head>

<body>
</body>
</html>

Screen Shot 2013-06-07 at 10.41.41 PM

To make sure your LESS code compiles correctly, you’ll need to throw the stuff I highlighted in the above example into the head of your HTML. Note how the typical rel=”stylesheet” has become rel=”stylesheet/less”. The less-1.3.0.min.js can be download from the official LESS website. The next step is to actually create that .less file.

Going through this great post by Joshua Johnson and it’s examples I learned about using variables in my stylesheets. Setting global styles enables you to make changes easily, rather than sorting through your code to find every instance of a style. Showcasing that Johnson sets a couple of color variables. Rather than remembering the color code every time, you can simply set these to variables:

Screen Shot 2013-06-07 at 10.28.17 PM

Just as with other programming languages you’re used to, LESS allows you to perform operations on variables. Say you wanted to create a box that was twice as wide as it was tall. You could declare the height in a variable and then set another variable as ‘twice that number’. Additionally, LESS allows you to set multiple variables into a single class that can then be embedded elsewhere in your code. To setup up a mixin using LESS, use the following syntax (borrowed from Joshua Johnson’s post):
.roundedCorners (@radius: 12px) {
-moz-border-radius: @radius;
-webkit-border-radius: @radius;
border-radius: @radius;
}

Now when we want to apply .roundedCorners to an object, we simply throw it in the class:
#box {

background-color: @primaryColor;
.roundedCorners;
}

There are some disadvantages to running LESS on the client side. Firstly there is a dependency on the client having JavaScript (or: having it enabled). Second, *some* time on page load is spent converting the LESS to CSS. With mobile browsing that could cause some irritation with your users and visitors. In order to make the product version of a website as quick as possible, one could use a build script in order to convert LESS to CSS before deployment.

Plus: when using LESS, one of the first things you should actually do, is grab a library of mixins for common patterns of CSS, like specifying rounded corners and drop shadows, like lesselements. To use lesselements, just git clone it (here’s the Github repo), put the “elements.less” file in your stylesheets folder and include it with 1 line of code at the top of your LESS file:
@import "elements";

Enjoy!

June 7, 2013 at 2:04pm
1 note

If coding is the new literacy, why do we keep programming in our own language?

A few days ago I got a bit agitated attending the millionth startup event in Austria where the language was German. Austria is not the navel of the (startup) world and limiting to German subconsciously implies that ‘we’, Austrian startups, are not looking to expand beyond yodeling borders. Additionally, the startups with international teams occupying Vienna’s co-working spaces won’t feel that valued (or welcome even). And as reporting on these events will be in German as well, it means the reach of AustrianStartups (the organizer of the event concerned) is limited to German speaking countries. That is, it’s not like Berlin gives a fuck about what entrepreneurial Austria has to offer, and who can blame them?

Screen Shot 2013-06-07 at 7.54.05 PM

I’ve been to - and heard of - Rails Girls events that were hold in the local language, even if some participants came from different countries. Now that’s unfortunate as it is, but that’s not even my point. Here you have an event that aims to overcome obstacles for a minority in the tech world, you’re not making it easier for them to refrain from the international language for coders, which (arguably) seems to be English. There’s enough discussion about programming languages - and the supposed superiority of one over the other - as it is, it seems silly to put general language in that quarrel as well.

I gave it a try once, when I thought learning Java in German would be a good idea. Starting with Java alongside Ruby proved to be difficult enough (yet very helpful, but that’s a topic for a different post), getting familiar with the German programming terminology however, was a pain. I also didn’t understand why one would want to learn the German terms for, say, libraries, gems, object-orientated programming or version control.

For vienna.rb, the Ruby user group meetups I co-organize, we stick to English for the talks, slides and code examples. Next month I’ll give a one day course to Ruby for students of the University of Amsterdam. In Dutch. With an audience that is all Dutch, it seems gushy to address them in anything else than my mother tongue, and I won’t. I will however craft a tutorial and slides in English and push them to GitHub. And by all means I will not translate any terms in Dutch. My students-for-a-day will need to search for the solution to error messages online, and knowing the Dutch words for, say, methods and variables, won’t help you much on Stackoverflow.

Dear developer community, could we stick to English? Danke ;)



via WordPress http://bit.ly/126T07y

1:59pm
66 notes
Reblogged from devopsreactions

Writing unit tests

devopsreactions:

image

image by @patrickramsey

June 3, 2013 at 10:51am
88 notes
Reblogged from devopsreactions

I don’t need this piece of code

devopsreactions:

image

by Artsu

May 29, 2013 at 5:49am
0 notes

“Rails Girls is great, but why start so late?”

Funny - yet not unusual - thing happened to me a few days ago. Upon meeting someone for the first time I compliment him on his shirt that has an obvious nerd reference to GitHub printed on the front-side. His response: “Thanks, it’s from this company called …” GitHub, we say simultaneously. I have the feeling he doesn’t realize what just happened. I’m wearing my RubyThreads shirt, he could have known. Two hours (and a few beers later) he meets my boyfriend, who had just walked in. Bf: “Nice shirt!” The guy: “You must be an engineer!”

forkyou

This example painfully illustrates the point two dads were trying to get across that very evening when I pitched the Rails Girls project (I tend to do that): why start so late? Dad 1: “I want my daughters to be able to give commands to machines, not passively endure them. Learning a bit of programming is an essential skill for their future.” He told me how he tries to teach them at this topic. I then told him about makey makey and KidsRuby, and I guess he appreciated that, but his point remained. As dad 2 explained: “My son doesn’t have time to wait until schools and universities realize that programming is broader than Computer Science, or the brief ‘Informatics’ track that is offered. Today’s educational systems are not fit to adapt quickly. We need programming courses like Rails Girls specifically targeted at kids.”

Additionally, dad 1 said he was happy to hear that Rails Girls doesn’t exclude men from participating: “I think these women only clubs are contra-productive, it is in no way a representation of the real world and I wouldn’t want my daughters to feel like they’re treated differently because of their gender.”

The guy from the introduction didn’t mean anything by assuming I probably don’t know GitHub because I am a woman and therefor not your stereotypical coder. It’s a common mistake and he was actually a blast to hang with. He’s is my age and still in his studies, which probably explains his misconception. The classes he visits, developer meetups, tech conferences and hackathons are male dominated. And that’s where the two dads are right. Why start so late? Let’s get people interested in tech at a much younger age and we might be able to close that gender gap a bit in the coming few years. I’ll start thinking about how to do my bit.



via WordPress http://bit.ly/13YiLGe

May 28, 2013 at 4:49am
0 notes

How to bootstrap your monthly User Group meetup

The Viennese Ruby user group in it’s current format only started in February 2013. In a 3-month time frame we found 100 Rubyists in our meetup.com group, 30-40 people attending our monthly events, enough zest for talks and the interest of companies sponsoring our meetups. Hurray for free drinks!

Who ‘we’ are? Well, there’s Andy (Andreas Tiefenthaler). And Tony (Anton Bangratz). And me, obviously. Andy and Tony both work at RadarServices as head of DevOps and head of Development. I do all kinds of stuff but in the Ruby world I’m probably most known as a vivid Rails Girls supporter.

Photo on 5-9-13 at 6.18 PM

We’d love to share our learnings as we learned greatly from the Bratislava user group (Rubyslava), who reached out to us when they saw us getting started.* So here we go, some tips on how to bootstrap your user group:

How to get your organizing team organized

We keep in touch via our own little mailing list, Google Talk Hangout things at random times and it’s not unlikely to see us debating stuff over a coffee or a beer in a local cafe in Vienna. All three of us have access to the GitHub repo to maintain the website and host the slides and we share custody over the meetup.com group and the Twitter account.

We noticed pretty soon however that everyone quickly picks their tool of choice. I like to tweet and write blogposts and press releases around every event. You will also see me running around the event venue to make sure everyone has a drink and is content. Andy is great with handling sponsors and regularly checks the meetup group for new RSVP’s and comments. Tony is the capo of the website. We all try and get people to do a talk at a next meetup.

How to get sponsors aboard

Funnily enough, we never had real troubles finding sponsors. Do your homework, check what Ruby shops are looking to hire people and ask them to sponsor your event. For a group of forty thirsty developers we need about 200 euro to pay for drinks at Sektor5, the co-working space that we usually host our events at. Which is great, because they don’t charge bar-prizes and I bet they like having a large group of young programmers roaming around their venue every now and then.

Why settling down is a good thing

Which brings me to my next point. Initially we thought hosting the meetup at a different company every time would be a grand idea. Viennese people aren’t known to be very keen on traveling, so that way we would just serve a different audience every time. With an overwhelming show-up at the first event however, we decided we just need the resources to cater a substantial group. Where else than at Sektor5, with it’s comfy couches, stable Wifi, and startuppy vibe? Located in the 5th district, it’s not far from the city’s center and reachable with all kinds of public transport.

Keep producing content between meetups

To keep our Twitter account and website up to date we aggregate Ruby news (in Vienna / Austria) and we have our weekly ‘picks’. We stay in touch with the companies that sponsored or talked at one of our meetups, so we’ll hear about their features / endeavors first. Creating more contact moments than around meetups only helps building a community and an open and (warm and fuzzy) welcomy feel.

Work together with other user groups (even of other languages)

Attending the ‘Bratislavian’ Ruby meetup was a humbling experience for me. Rubyslava organizes Ruby programmer meetups in Bratislava and they have been doing it for years. They merged with the Python user group and they are quite open to JavaScripters. We didn’t think such an ‘open to all languages’ thing possible, but attending a Rubyslava meetup I was in for more surprises. As most talks were in Czech or Slovak, one of the organizers had arranged an interpreter for me. Even though I had still to organize the first event for vienna.rb – I went to Bratislava for inspirational reasons – I was welcomed like a rockstar. After this meeting all these guys actually followed up on whatever we talked about during the networking-part of the meetup. And they returned ‘the favor’, showing up with a van with place for 9 people to every vienna.rb meetup so far. Meeting all this friendly and incredibly smart and hard working people from Slovakia really made me want to create the best experience possible for the people attending vienna.rb events.

What’s next for us? Well… there’s a hackathon in the planning. And we definitely need to print stickers. Or notebooks. Or both. And we’d love to do exchange programs with other Ruby user groups, enabling the really outstanding talks to make the rounds in Europe. If you think you could help there, or if this post convinced you to attend one of our meetups, we have one planned for the 6th of June.

* I actually send (a summarized version of) this post in for the CFP of Eurucamp. Unfortunately, this talk didn’t make it. But I wanted to get it out there anyway! :)



via WordPress http://bit.ly/117huM5