For a while now, I’ve been thinking about collective living arrangements specifically geared toward communities like hackers. I'm a member of the Hacker Dojo in Mountain View and its just awesome to hang out with creative people with whom I have a lot in common.
Technology and creative thinking can both increase shared housing's quality and affordability, even in expensive cities.
One thing that could be done with a large space is repurpose most of it for business tenants during the day. And for tenants themselves who might like to have space to work during the day very close to where they live.
This might be accomplished using moving walls that enable you to compress bedrooms like Gary Chang does in his apartment:
There would also locked storage in kitchen and bathroom and systems and personnel to encourage and maintain cleanliness.
The idea is to reduce the costs of things when you aren’t using them, but still maintain privacy and security. Tenants could also share many things they don’t use often, like tools, thus reducing the amount of storage space each person needs.
There would be a system that rents the space out during the day and you would pay a fixed price that covers your compressed room 24/7 and uncompressed for, say, 8pm – 8am weekdays or whatever suits you. Then the remaining space would be leased, with some auctioned off real time so that you can always stay home when you’re sick. And you'd pay less when you're on vacation.
Overall, the purpose is to give young, single people the opportunity to live in a clean, secure, supportive situation at a great price even in a high cost area.
I have to disagree here. A good example is StarCraft. If you play StarCraft by yourself, you can become a good player. If all of your friends play StarCraft, however, then they can help you become a great player. The sheer popularity of the game in Korea is largely responsible for Korean dominance at the professional level.
Right now I'm a programmer living with a mechanical engineer, a finance major, and two biologists. I appreciate the worldly perspective they provide, but the fact is I'm missing out on a lot of news/discussion/debate/learning related to coding.
If you want to be the best, you need constant feedback from other people who share your expertise. For most things in life, there are diminishing returns on how far you can get by yourself. It's not a coincidence that the best and brightest in any field tend to cluster in the same area.
You're looking for someone who is a fan of the same progr. lang. as you are, who uses the same text editor, the same VCS, and even the same libraries/frameworks. You're looking for a designer who uses the same version of Photoshop that you're using, or at least uses the version you think he/she should be using.
Yes, agree with both posts. You shouldn't care what language or library he's using.
There aren't "Ruby programmers", there are just programmers. I honestly try to stay away from people who claim they are language x programmers and those who think one language is superior, because quite frankly they're often not that good.
Honestly are Ruby programmers really better than those who code in C or haskell and honestly what does it matter which text editor I choose to use?!
What would you learn if he knows and use the same things as you? Wouldn't it be a lot better, and a lot cooler, if your roommate could teach you about compilers, creating games or advanced algorithms or something that you don't know already?
It's a great idea to get a roommate with similar interests, but really I think you're focusing on the wrong things.
Way to go and miss the point. I said that he might know something that you don't know which could be nice to learn, or are you seriously saying that you know everything?
I'm sorry that I offended you, I didn't doubt your knowledge.
And my point wasn't that he must only know ruby, but that you should focus more on programming skills and not focus on a specific language. A competent programmer should be able to jump between languages with relative ease as long as they have some related skill.
I guess I started thinking about a friend of my when I read your post. He's someone who says C is the best language in the world, poet is the only worthwhile site on the web and everyone who didn't use linux was bad and wrong. Different opinions was never allowed and he was right all the time.
Maybe it's me but maybe the post does give out a little smugness, like saying you want (prefer) him to love textmate.
No you haven't offended me... and I haven't missed your point either.
But I do feel like you are putting words in my mouth: "are you seriously saying that you know everything"
Where the hell did you see myself saying that?
If you read my other replies - I said I have an intense passion for learning. This means I do learn from other people than myself.
You're right... A competent programmer should be able to jump between languages.
I don't think Ruby is the best programming language in the world - but it has suited me well for what I'm doing and allows me to iterate through development cycles quickly with ease, plus there is a large community built around it in San Francisco.
When something better for the job comes along I'll pick it up just as quickly.
Initially I asked you if there isn't something your roommate could teach you which would be good and I gave the examples compilers, creating games or advanced algorithms.
Where you responded What makes you think I don't already know about compilers, algorithms and game creation?
This I read as a you're being offended and/or missing my question or as if you're telling me that you already know everything about compilers and the something (which alas is everything).
It's great that you like to learn, just like me, and I think it's a great opportunity to learn and to get a roommate who knows a lot of good funky stuff. This is also why I don't think purely focusing on programmers who knows Ruby is a good idea, instead you should focus on good programmers who know stuff you'd like to learn.
I don't want to pick on Ruby, in fact I think it's great.
isn't something your roommate could teach you which would be good and I gave the examples
In many ways two specialists in the same area can teach each other far more things than two specialists in different areas. The problem is until you know a lot learning from a wiki is often the best approach, however the more you know about say java script the more things you can learn with that foundation.
Think of it this way, how long would you need to spend with tiger woods before he becomes significantly more useful than the average golf instructor. And how does that change as you go from a beginner to the pro level.
The fact that you seem to be getting a little upset pretty quickly by the criticism in this thread probably says more about you as a roommate than the tools you use. I'm past my roommate days thankfully, but take it easy dude!
Because you can talk/discuss something other than computer science / software development to them, hence you would not be limit your learnings in one direction.
I, for one, would not like to bring what I do for living to my home. If I need to discuss my CS ideas, I can find likeminded people at other places, (say where I work/study), but living with "like minded" people 24 X 7, is not something I'd like to do. (Unless I am starting a startup or something)
You are severely oversimplifying people. There is nothing that prevents a software developer from writing poetry, or a poet from designing websites. Interesting people have a wide range of hobbies and interests.
1. You should not live with your co-founder(s). It's important that you can take breaks from the startup/each other by going home.
2. You should be friends with your co-founder(s), but not "best friends". A startup is a bussiness relationship which is incompatible with "best friendship".
This is my experience based on doing my own startup and watching others.
I don't have to look far for a counter-example: reddit. From the articles and interviews I've seen, I think rooming together was a very important part of reddit culture early on.
I think this is a clever idea. I know of a few people that have pondered getting housemates that have a specific skill set in addition to a good vibe.
I think you've missed the single most important requirement for a "kickass roomate" - has got non-work stuff finished and launched.
I would also advise you to scrap all the development/design criteria of tools, and focus on attitudes and passions. Like look for a hacker developer, and a designer that is obsessed with user experience. Any man and his dog can use a collection of tools but that makes them neither a developer nor kickass.
You might also want to put a link to a web product you've finished (you state "i develop web applications not only for work, but for fun. it takes up most of my time.") -- you have launched stuff right? :)
It looks like while this says "roommate" it really means "RoR project-mate"? Sounds like the implicit expectation is that you'll end up working on RoR projects with the poster of the ad?
I might as well mention that I want to move in with some free spirited artsy sciencey hackery types. (Currently living in a 1BR in Berkeley.)
First and foremost, it's about making like-minded friends and reliable roommates.
Ideally, the goal is the create a valuable development team in the process - and then take on fun and creative projects through opportunities like ycombinator and kickstarter.
That being said, I am a Ruby developer. I do think that anyone I pair-program with should be familiar with Ruby.
However, I am not tied to the constraint that I have a roommate that is a Ruby developer.
The Ruby requirement makes plenty of sense to me. But the Textmate/Heroku/rspec criteria make for a pretty tight Venn diagram, especially since you should be looking for someone who doesn't think exactly like you do. And do you really care if your roommate uses a different text editor than you do?
I've updated the website to say Textmate is preferred rather than required.
The "heroku ftw!" remark is just a deployment option that I added in there to express my feelings towards the company. Technically it doesn't matter what platform we work on. I just happen to find them to be a rather unique and creative service that suits my needs.
As far as RSpec - it's a matter of personal preference, but again... technically it doesn't matter.
Anyone who doesn't meet the requirements EXACTLY should not feel unwelcome in sending me an email :)
Learning a new technology isn't really that big of a deal anyway. What if somebody introduces you to a technology that is better suited to solve a problem?
Working with designers is an important and underrated thing for developers. I worked at a design firm for years and learned an awful lot.
It's a great selling point too. Many web projects suffer from, shall we say, a bit of friction between design and implementation. I sell myself to potential clients on my respect for, and ability to communicate with, designers.
Knowing a designer's vocabulary will make you better at what you do.
I agree. I don't know if you checked out the link, but I designed and coded that in about one hour. I may not be a designer - but I definitely speak their language!
Hm... might work ok if the hacking on projects together aspect of it was relatively low-pressure/low-commitment stuff, pitch in if you have time and find it interesting but don't guarantee anything.
But otherwise mixing two big-ish commitments (living together stuff, work stuff) could lead to some unpleasant friction if things don't go well.
Sometimes you do want a bit of separation between 'work time' and 'home time', not to have to feel accountable to work people about the way you spend your home time and vice versa.
I did live with the freelance designer from my work for a bit though. It worked ok because work is in the office, so pretty clear separation of work time and home time. But not really the same situation as you describe.
My brain tells me you shouldn't start your first date by asking the person to move in with you. I have a feeling you've already heard this, and you will only accept this knowledge after your experiment.
It’s not really necessary to have the newest and greatest CS. Many designers I know skip a version or two and they generally tread carefully (i.e. take their time) when transitioning. Don’t judge designers by the version of the CS they are using :)
Technology and creative thinking can both increase shared housing's quality and affordability, even in expensive cities.
One thing that could be done with a large space is repurpose most of it for business tenants during the day. And for tenants themselves who might like to have space to work during the day very close to where they live.
This might be accomplished using moving walls that enable you to compress bedrooms like Gary Chang does in his apartment:
http://unclutterer.com/2010/04/26/video-incredibly-efficient...
There would also locked storage in kitchen and bathroom and systems and personnel to encourage and maintain cleanliness.
The idea is to reduce the costs of things when you aren’t using them, but still maintain privacy and security. Tenants could also share many things they don’t use often, like tools, thus reducing the amount of storage space each person needs.
There would be a system that rents the space out during the day and you would pay a fixed price that covers your compressed room 24/7 and uncompressed for, say, 8pm – 8am weekdays or whatever suits you. Then the remaining space would be leased, with some auctioned off real time so that you can always stay home when you’re sick. And you'd pay less when you're on vacation.
Overall, the purpose is to give young, single people the opportunity to live in a clean, secure, supportive situation at a great price even in a high cost area.