HNHacker News
TopNewBestAskShowJobs

Throwadev

120 karma · joined January 9, 2013

submissionscomments
Throwadev··on It’s time to grow up.
It's nice that you blog your thoughts, but I think posts like this are more suitable for twitter than HN. What are others going to learn from this post? You are just announcing that you are doing something else, there's nothing interesting that others could garner from this. If you posted about specific things you learned that weren't already part of the HN reader canon, then maybe it would be worthwhile to post.
Throwadev··on Bitcoin to be ruled illegal as of May 1st
This is a hoax. One drawback to BTC is the entire Bitcoin community is full of scam artists. Like this poster, who tries to do things like influence public sentiment to move the markets in a direction that benefits them. You see this kind of thing a ton on the bitcoin message boards, where they post "Guys! I heard that such and such is happening. Watch out!!! Your BTC is going to be worthless soon!!" or they just post fake articles without attributing a source to them.

It's weird but for some reason that community is full of enough people who tolerate this kind of thing and even fall for it that it made me sick of Bitcoin. I like the idea behind BTC but the sleaze factor was too high for me to stick around.

Throwadev··on Web Framework Benchmarks
Also ServiceStack vs ASP.NET MVC vs NancyFX vs Fubu, Mono vs IIS/windows, default serializer vs JSON.NET vs ServiceStack's, etc. There are tons of variations that could be done.
Throwadev··on Ask HN: How do you find a technical cofounder with little experience?
How to find? Go to meetups, hang out at engineering clubs at your school, post fliers or find other appropriate means of putting it out there that you are looking for a cofounder. You don't want someone who is going to "learn on the job" if you want a chance at making this successful. So finding CS students at your school won't be that useful unless you can find someone who's published some web sites or apps before. Look for someone with proven ability to start AND finish projects (non-school ones).

Outside of school, attend meetups. Learn to code, but not to build it yourself, but to have an excuse to be around developers. That's a reason to be at meetups. There are also meetups specifically for people who are looking for cofounders.

You can also post online (as you did here), to find co-founders, or on things like craigslist in the jobs section.

Other options are to outsource on e-lance or something like that. People offshore can build stuff pretty cheap, but the quality is terrible once you want to scale or maintain it. That shouldn't matter too much because if that becomes an issue, that means you're succeeding.

Throwadev··on SendGrid fires Adria Richards?
What if the same passwords were used for all there? I think if FB and Twitter were hacked, it's possible the blog was compromised in the same way. Presumably you get access to someone's email, and through the email you get their passwords to various systems. I'm not saying it's what I think happened, or that it's likely, just that you still can't rule out that all three mediums were hacked.
Throwadev··on Ask HN: Anyone in NYC involved in Open Source Movement want to do an interview?
If you have trouble finding people, you might also want to look on meetup.com, for at NYC area meetups related to open source technologies.
Throwadev··on Google to customer: Go fuck yourself. In the cloud.
Lame blog post. Totally wrong, and the user didn't go far enough to solve his own problem. px1999's reply about SPF/DKIM setup should be looked at. If that doesn't work, you can contact google and let them know the problem.

"The Cloud" as a robot that can't be interfered with by the operating company is a stupid notion. If that were the case most cloud and SaaS companies would go out of business because they'd never be able to fix problems that come up. Most systems can be looked into, and can be tweaked in numerous ways.

Throwadev··on Foundation
If you're going to post pointless blog posts, fine. But why advertise it here?
Throwadev··on [dead]
Guess that turned to to be not nearly as clever or funny as the creator thought it would be.
Throwadev··on Test-Driven Development Bypasses Your Brain
Unit tests are still useful sometimes. Everyone, when they first start out, goes overboard with how many tests they write, and can't tell the difference between what should and shouldn't be tested. The first couple of projects that are unit tested for a developer tend to have so many tests that are brittle that it slows the entire process down.

What I do now is, well, I'm going to actually test stuff while I'm coding anyway right? Regardless if I'm doing TDD or not. Well unit tests give me a useful harness where I can write those tests, instead of hundreds of Console.WriteLines. It's basically not much more effort than Console.WriteLine() style "testing", except you are left with some reusable artifacts at the end that may come in handy later on.

Throwadev··on Bootstrap Release Candidate embraces flat design
I think it looks worse.
Throwadev··on Ask HN: any ideas on how to deal with lousy Time Warner Cable service in NYC?
Try getting DOCSIS 3.0 (50Mbps down/5Mbps up) if it's available in your area. That's what I have both at work and at home, in NYC, and it's great. The service rarely ever has outages, and speed is very good. I am using Time Warner as well.
Throwadev··on Datastax ripped us off
I'm not involved but I wanted to see what discussion might come of it. I see where the fluent-cassandra guys are coming from but I also agree with your point. I'm new to open source and I personally didn't know people took this stuff as seriously as the fluent-cassandra devs do. I always figured if you contribute back you are one of the few who do things the right way.

When the Datastax guys dumped their code the way they did though, it uppped the drama factor a bit.

Throwadev··on Cloud based email filtering and bidding service
Can you give one or two use cases for this product? I guess if you are on email newsletter lists this would filter those out. But what's the purpose for the bidding feature?
Throwadev··on Ask HN: What was that tool to install bunch of core windows programs?
Sounds like Chocolatey. Touted as "apt-get for Windows"
Throwadev··on 'Facebook profile may expose mental illness'
This is seriously academic research? "People who are less social use facebook less to interact with others" -- are you kidding me?? No freaking way!
Throwadev··on Ask HN: Am I being too hard on the developers I interview?
I wouldn't expect them to write the code for it, maybe some pseudo code, but a candidate should be able to talk through the problem and come to a solution for this in 10-15 minutes. It also depends on what kind of work you expect them to do. If you are building iPhone apps or doing plain old web dev, you probably don't need candidates who can solve this in <10 minutes.

I'm not surprised by your 90% no-solve stat. Candidates I interview who put Java/C# on their resumes can barely "write a function that returns true if the first letter of a string parameter is capitalized". At least half flat out can't do it.

Throwadev··on Ask HN - On your current project, how long does the build + tests take?
Normal build, < 30 seconds. Build for production, about 2 minutes. Build from scratch, that includes building and populating the database, 20 minutes.

No tests yet. I really need to fix that...

Throwadev··on Ask HN: Why does everything about NYC get downvoted or flagged into oblivion?
I've been curious about this too.
Throwadev··on How do you boot up yourself to be productive?
I don't think there are any hacks to it. It takes time to get into the zone. Most of the time where I care about this, or pay attention to it, it's because I have to work on something I don't want to work on, but must get done. There are some hacks to it. Invariably, I find that once I get started, and once I'm finished, it wasn't as bad as I thought it would before I started. Something like working on a lame feature my product person or sales team insists we need, but I don't want to do it because it involves tracking cookies or session state and transfering that state over to a user's profile after they've logged in.

I have a few tricks to get myself started on tasks like this. First, is to close the browsers, and close everything except my IDE and the other development tools I need for the task. Close any other code projects that aren't directly related. A reboot often works. Then, I'll open a clean .txt file and just start writing, sort of stream of conscious style, about what I have to do. It helps to get a once sentence objective down on paper or on the screen, because when I'm unmotivated it's very easy to lose focus and move onto something else, so having that objective written down on paper helps remind me what I'm supposed to be doing. If the task is big enough I'll break it into smaller ones and write those down. Each task should be it's own self contained problem.

Most often when I am unmotivated it's ebcause I have to research before I can proceed with a task, and while I like research, if it's not something I'm into I'll still have a hard time motivating myself to do the research. So for each task, if there is something I don't know, I'll write out what I need to do, what I need to figure out, and if I know of different approaches to solving the problem I'll list all of them out and list the pros and cons for each one. Once that's on paper, it's usually pretty clear what the way forward is. If there are open questions, i'll put tasks to research them.

This sounds tedious but it normally takes less than 10 minutes to do, and i end up with a list of tasks, that are either research based, or implementation based. And I get started on them. I mark them each "DONE" (or cross them out if using paper) as I go along. And of course I order them such that anything that needs to be figured out before working on other stuff is done first.

This sounds pretty obvious, but when you're not feeling motivated I find this helps. It's basically a process that parallels onto paper/.txt what you do mentally when you're in a flow state. But when you're unmotivated, it's hard to keep track of all that because you keep getting distracted. This is a good way to finish and fight out getting things done. No matter how interesting a project is, there are always pieces to it that are non-glorious and a process like this helps.

Aside from that, I just like to have a routine set up. Sit down at the computer and just start working. Being able to force yourself to do something you aren't that into doing is a GREAT skill to have, and you can improve it over time with practice. You can also lose it by not practicing.

Another thing that helps, is before leaving the computer from a work session, I write down a few lines in Evernote. It just looks like this:

Where I left off, 2013-01-18 (before leaving cafe Thursday night): - Just finished figuring out how to store the user data in cookies, but there might be problem with the way it's saving. I think I should track when the data is changed and only .Set() the cookies when the data has changed, and I need to track it for each set of values so that they don't wipe each other out. - still need to do XYZ - remember to merge into master for the release I just did, and push everything

It's just a two minute recap of the last thing I was working on, and what I wanted to work on next. I find that this helps me a lot to pick back up faster the next time I come to the computer to do some work.

Throwadev··on How to eat an elephant: Planning software development
"You do not have permission to preview drafts"
Throwadev··on After 5 years as lead dev small startup, what now?
Right, I agree with you that I am not filling the shoes of what I should be doing, and that is one of the reasons I'm not happy here, but that's not due to lack of awareness or effort on my part. I have never had issues communicating to non-technical people before. My previous managers have always commended me on my communication skills. In the past I consistently raised issues and potential areas of for improvement, explained the significance, and came to agreements with the product and project managers on a reasonable balance between continually improving our systems, maintenance, and adding new features. There is also another huge factor that complicates things, that is out of my control -- our systems are tied to a partner company and to a large extent they have determined our technology because our apps run in their servers, on their datacenter. So we've been stuck on Windows 2000, SQL Server 2000, running COM+ stuff, because those guys never upgrade their crap.

However, some projects to improve systems and to finally start looking at decoupling from the external partner are FINALLY showing up on the roadmap for 2013. I spent all of 2012 on a brand new project where I enforced my vision of how things should work (totally modern tech stack, automated builds, cloud deployments, etc). That project was a big success.

So if I were to stay one of the things I want to know is how I can convince my manager to get out of the way more, and let me handle a bigger role in planning and executing the projects. Because even though the projects are coming up, he is already starting to try to "mentor" the jr dev's by trying to get them to "own" specific new projects and feature areas for things that we'll do in 2013. I strongly disagree with this approach; I want team ownership, but with his hub and spoke approach (my +1 being the hub) to managing, there is no real development team. The Jr. dev's practically never increase their skills because they spend so much time on legacy code and tedious operational stuff that can be handled by interns (i've recommended this before, buy my manager doesn't agree).

Your point is well taken though, and it's something I've been thinking about. I would welcome any advice on how to arrange a better environment for myself at the company, that would allow me more autonomy in leading the developers. How do other lead developers at small startups handle this kind of situation? Who assigns tasks directly to developers? My manager micro-manages, and assigns individual tasks to individual developers. I know that if I got to lead the team myself I'd have been able to incrementally upgrade parts of the system to free up the Jr. developers' time, and by today they'd have a lot more free time to work on even more new features. How do I discuss this kind of thing with my manager without offending his clear need to maintain strong control over the Jr. developers?

← PreviousPage 4 of 4