Or use Discourse which offers many of the same benefits without the "rush to see who can post the most upvoted image and win" dynamic, and potential for more substantive discussions!
Bonus, you don't have to write any extra code either. Well unless you want to contribute ...
We do a variety of things including FIRST. We also compete in CyberPatriots, PicoCTF, the Northrop Grumman Challenge, the Raytheon Engineering Challenge, along with a few other things. We also teach programming to anyone who's interested.
I replied in more depth, but it came down to making it private and authenticating against our own app via oauth. Hacking existing solutions seemed like more work than building our own. Plus it's fun to make things.
I guess setting up discourse is too heavy for this use case. The same may be applied to the original reddit source, but at least reddit comes with a VM image.
Hey, I wrote this, so I can answer a few of the questions.
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.
>The killer feature that we wanted it to be private to our company
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.
Well it's primary purpose was to cut email. And it has. We had a lot of emails that had a lot of replies that were not actionable, like birthday emails, and new hire intros. After 30 "Happy Birthdays!" and "Welcome to the team!" responses you get pretty annoyed seing the thread hit your inbox.
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.
But you can run private versions of reddit pretty easily. Any reason you wrote your own instead of just installing the opensource(and somewhat prepackaged) version of reddit?
He already explained this. Hacking the auth would've been more work and provided less opportunity to tinker, have fun, and learn anything he cared about (Rails 4, Ruby 2).
Telescope dev here. Completely understand why you'd roll your own solution, but just want to point out that Telescope can be made private just by checking a checkbox :)
Good stuff. I like telescope. Largely the reason we rolled our own is for us to easily integrate it with our auth. We use a bunch of internal tools, and having them integrated with our Treehouse auth is really nice. Not having a separate user database for each tool is great for getting people to use it, and managing new employees and the employees who leave the company.
Telescope was my favorite of the choices I saw. Great work.
Interested in hearing more about this. Taking care of this would help with the adoption (and priority) of this project. If you have any tips, please feel free to drop a line at jherrick at gmail. Thanks!
I feel like an old person when I think it's a sign of the apocalypse when employees are playing WoW, surfing (do people even use that anymore?) non-work-related sites, and texting/tweeting/whatever on their mobiles AND missing dates.
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.)
Probably ties into the increasingly blurred lines between work and home. I check emails/answer hipchat questions at home, and browse Hacker News/Reddit occasionally at work. Seems like a fair trade-off, in moderation of course.
We use dashboard.io internally at 500startups - https://dashboard.io/ (Paul Singh's latest startup), and it's quite effective. It has multiple inner networks on the same network (like founders, mentors and staff inside the bigger 500startups network), discussions, events and private messaging. Highly recommended
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".
Whenever I see "Tutorial: X" on the internet I immediately think "What if a beginner read this".
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.
If you have to do stupid tricks such as concatenate statements with ; and create long lines, it's not a useful trick.
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.
I do think there is a place, in a distributed company or working with offshore resources, for "idle chit-chat".
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 lot of people here overlook that Jim clearly must have had fun building Convoy. Working at 37Signals means that he couldn't have taken too long to build this rather simple (yet beautiful) web app.
Bonus, you don't have to write any extra code either. Well unless you want to contribute ...
http://github.com/discourse/discourse