How to use a Reddit-clone to boost company culture
ryancarson.com
ryancarson.com
Bonus, you don't have to write any extra code either. Well unless you want to contribute ...
Why not discourse/reddit/telescope/etc...? I looked into those. Solving the problem we needed a few basic things, posts, threaded comments, and votes. The killer feature that we wanted it to be private to our company, and we wanted authentication integrated with http://teamtreehouse.com. Hacking any existing solutions to fit that auth model seemed more work than it was worth.
When it comes down to it, it's a ridiculously simple app. There's a few models, and not a whole lot of code. When we gauged the effort of integrating most of the OS solutions into our oauth system and locking it down to be in-company only, just making the app was way easier. Plus. we can easily extend it to fit our needs, and we have. Also, I wanted to play w/ rails 4 + ruby 2 for the first time.
Regarding the name, it was a code name. The tool is built for having conversations (convos), and I though convoy was a cool codename. As soon as Ryan saw my working prototype, he told me to launch it, and the name stuck. I didn't even know there was a movie.
We also has a lot of emails about interesting articles about our company, or the space we're in. Sometimes discussions would happen in email, and not being well threaded it was hard to follow. Also those emails are not usually actionable, but they appear in your inbox.
We post a lot of interesting links in convoy, as well as all the above categories of conversation. It definitely has more of a reddit feel than a HN feel. It's not a work-only type of environment. We have fun. Since the video team has hours of video of the teachers, they have this habbit of making embarrassing animated gifs and posting them, which is fun.
We don't really have rules about what you CAN post in convoy, we have guidelines about what you SHOULDN'T put in email. If it's not a good convoy post, votes will take care of it.
Seems like selling private subreddits (much like github sells private repositories) would be a really obvious and easy way for reddit to increase their cashflow, since I'm sure more than just companies would be interested in that.
Telescope was my favorite of the choices I saw. Great work.
Standup, planning meetings, discussions, speeches, emails, phone, IM, wikis, surveys, internal blogs, and now Reddit.
When am I supposed to do actual work?
I also pull 'confused puppy' when they complain about content filters blocking reddit, etc. Sure, there's the occasional gem there, but it's rarely a primary source for solving a work-related problem, and I am highly suspicious of claims that it is needed for work. (Unless you're in a very narrow niche.)
They make it so easy, too:
https://github.com/reddit/reddit/wiki/reddit-install-script-...
and a VM, ready for VMWare / VirtualBox (it's a vagrant setup, actually): http://www.reddit.com/r/redditdev/comments/qnuxp/pycon_prepa... (about a year old)
For anyone interested in more details, there's a subreddit community about it as well: http://www.reddit.com/r/redditdev
10 lines of code? Yes
Easier to read? Hell no.
If you have to sacrifice readability and idiomatic ruby for LOC then I think the entire premise is void and a lot of the advice misguided.
The goal isn't to write pleasant code; it's to explore what's possible with the language, even if you should be slapped for using the techniques in a real project. Reducing LOC is akin to code golf; the shortening is an ends to itself, and sites like codegolf.com are essentially competitive problem solving with a very strange goal.
Tangentially: In a different subject, there was an ad hoc competition to write the shortest science fiction story.
One example is Knock, by Fredric Brown: "The last man on Earth sat alone in a room. There was a knock on the door..."
Another is Cosmic Report Card: Earth, by Forrest J. Ackerman. The entirety of the story is "F".
Therefore whenever I see an article without a "Do not do this in real-life / production because..." warning I immediately take a negative view.
In this case I evaluated the site with that in mind, all the techniques are useful but the examples are pretty badly shoe-horned. There are much cleared ways to give examples of multiple assignments than the examples there.
Other things like writing methods on one line, probably useful in situations like defining error classes
"class MySpecialError < StandardError; end" but apart from that I frown upon it.
There is also the "Hey, this is a nested ternary operator" example which is... well, demo'ing nested ternary operators without a big fat "Do this in real life and people will hurt you" warning is a no-no in my book.
A bit rambling but I suppose to sum up my main problem with this was "Here are some things you can do" without actual discussion about when they are suitable, when they are not, and why this is so.
In general, reading even the original code, the author doesn't understand Ruby or OO in general. A number of the items would be one-liners with an improved application of theory rather than syntactic rewriting. If the goal is just golfing, then #map and possibly rockets would be better choices.
If I wanted less maintainable code in a shorter line count, I would use a mechanical obfuscator.
Although it may seem like a waste of time, this is how people bond. Even if you're dealing with different cultures, people still have birthdays, weekend plans, weddings/children etc. These are common and help bring people thousands of miles apart together.
A simple blog with 12 iframes.
Important to make the data exportable and have a solid privacy policy.
Done.