HNHacker News
TopNewBestAskShowJobs

kyleashipley

145 karma · joined February 15, 2012

submissionscomments
kyleashipley··on React on ES6+
I don't think that avoiding mixins implies inheritance. The more common pattern, at least in React, is "higher-order" or "wrapper" components where the responsibility for managing the mixin's behavior is moved into a separate, composable component.

The main issue with mixins is that the origin of behavior becomes opaque. If I call this.mixinFunction(), it's not defined in my file or imported directly, so I have to know exactly which functions come from which mixins. With higher-order components, you can just look at the props and know where things originated.

I'm not a staunch defender of any particular approach, but I think that's the main argument against mixins. (And it applies to other languages as well, such as Ruby.)

kyleashipley··on The Apple Watch Is About to Make Apps an Afterthought
I didn't downvote, but your comment doesn't add much to the conversation. Are smart watches DOA as a product category? Why? Can we still incorporate lessons from the single-tap model into phone apps? How?
kyleashipley··on The Worst Way to Fire Someone: I Was There
Is it possible to have the employee waive his right to a wrongful termination lawsuit? A waiver seems to be a condition of many severance packages, although I'm not sure how enforceable it is. Could thorough and actionable analysis be treated as a form of severance?

It's not a perfect solution, but I'd prefer the option if I were in that situation. The expected value of a wrongful termination suit might be less than good career advice.

kyleashipley··on Ask HN: Who is hiring? (February 2015)
My guess is that Node is responsible for serving the HTML/CSS/JS that's used by the front-end, and probably providing an isomorphic Ember endpoint down the road. So probably in the realm of knowledge that a front-end dev would need, but not a front-end tool in that it doesn't run in the browser.
kyleashipley··on Google got it wrong. The open-office trend is destroying the workplace
That's probably true, but our goal wasn't to optimize floor space. And that's the problem with most open office layouts -- they're optimizing for the wrong thing. Open offices are not a magical panacea that makes workers happy and productive, but neither are they the reason your environment is unproductive. The way your team interacts is a bigger factor.

Viewing your office layout as an ideology is part of the problem. It's not about us-versus-them. It's about identifying your team's work styles and building a space to support them as best as you can.

kyleashipley··on Google got it wrong. The open-office trend is destroying the workplace
From what I've read about Google, they optimized for flexibility in their space. We tried to do the same, although it became difficult when the company grew faster than the office space (at least until we moved again). Not sure this would be any different in a private offices scenario, though. We had a few people who were less than enthusiastic about the open layout, and we tried to give them the space to break out when needed.

We also communicated our preferences directly. If someone was interrupting us, we would let them know that it was better to send an email or grab us before or after a known distraction (arriving at work, lunch, coffee break, end of day). We tried to schedule meetings on Mondays and Fridays to give us largely uninterrupted time during the week. People respected our preferences and tried to accommodate the "Maker's Schedule."

I'm not sure every company could or should work this way, but I worry that backlash around poor implementations of the open layout will cause us to throw the baby out with the bathwater. It's up to each company to evaluate the compromises necessary to create a productive workspace, open or otherwise. I worked with great people and the open office concept worked for us.

kyleashipley··on Google got it wrong. The open-office trend is destroying the workplace
I'll play contrarian for a moment: the most productive office I've ever worked in was an open office layout. What worked for us:

* Separate clusters by function / noise level -- We didn't put sales people and developers next to one another. People who spent all day on the phone were near other people who spent all day on the phone.

* Keep clusters small -- We had 4 person "pods" of desks for most of our early lifecycle. You weren't constantly interrupted by a dozen people from every direction, but you had a few people you could bounce ideas off of when you needed to.

* Lots of breakout spaces -- If you need to have a conversation that lasts more than a minute or so, find a private space. It was nice to hear a snippet of a conversation and decide "I care about this topic, let's break out and discuss further" or "This is not relevant right now, I'm going to disregard."

* Be respectful of flow -- If someone is deep in focus, just leave a post-it on their desk or send a message via chat. (This was a good form of one-bit communication for us.)

I don't think it's impossible to create a great open office layout. People just copied the ceremony without the essence. It's no different than "Agile is broken! We have 20 minute standups 3 times a day and nothing gets done!" Maybe the reason is because you're doing it wrong.

kyleashipley··on Twitter's debt assigned 'junk' status
This is almost exactly how I use it as well. I find Twitter to be incredibly valuable, even though I scoffed at it for a couple years before finally signing up.

I also know many people who game their main feed by reciprocally following everyone for audience building, then set up lists for groups they actually care about. This makes the main view too noisy for me, but I could see that as a viable strategy.

kyleashipley··on My Day Interviewing for the Service Economy Startup from Hell
As a counterpoint, the Wikipedia definition of startup was coined by Steve Blank sometime in the past ~5 years, so it's not exactly ancient history.

I think if we place emphasis on the word "scalable," PG + Blank's definitions are compatible. Both distinguish "startup" from "new company." I don't think most people would categorize building a tech company and starting a hair salon as the same activity because of the force multiplier of scale.

kyleashipley··on My Last Day at PivotDesk
Appreciate the response and love to hear that you guys tried to make it work. I originally read the quote you pulled as rationalization / post-hoc justification, but I can see how maybe he just didn't elaborate on that bit. (I was also merely trying to balance a lot of the negative commentary with a more productive approach to these sorts of problems in the future.)

I'm guessing this was a trying time for all of you. Wish you all the best moving forward!

kyleashipley··on My Last Day at PivotDesk
Without having the PivotDesk side of the story, I can't help but feel that there's a second, undocumented failure here: the lack of a strong feedback culture.

Did the cofounder really not receive any performance feedback until "It might be time for you to go"? Did his team members not feel comfortable talking to him about it, or perhaps even the other cofounders, until the situation reached a boiling point? Did other team members know they had an open communication channel to provide feedback about a cofounder?

Unless the issues he describes are intrinsic personality quirks -- in which case he probably needs to understand his tendencies and find an environment where he can thrive -- this whole situation seems avoidable. All employees, but especially managers, should create time and space to have candid, mostly unstructured one-on-one conversations with a handful of direct reports / superiors / peers. Leaders should invite criticism from the very beginning and make sure everyone knows it's safe to challenge ideas and decisions. And ideally, this starts during the hiring process. Let potential employees know that you value productive dissent and do your best to evaluate them on that axis.

If you don't have people within the company that can effectively evaluate you, find someone outside of the company that can provide advice. This seems more common at the (co)founder level, although could apply e.g. to a technical person at a highly non-technical company as well.

EDIT: As a cofounder, he had the power to engineer some of these support structures himself. This isn't "mean company ruins struggling cofounder," but rather a reminder to spend time on soft skills and the human element of running a business.

kyleashipley··on Rails 4.1.0 released
3.2 -> 4 is an order of magnitude easier than 2 -> 3.

The upgrade guide is pretty solid, and I imagine it mostly applies for Rails 4.1 as well: http://guides.rubyonrails.org/upgrading_ruby_on_rails.html#u...

I spent most of my time updating app config. For several of my 3.2 apps, I started using strong_parameters, so it wasn't a leap for me. Another app I have on 4.0 is using the https://github.com/rails/protected_attributes to retain the existing attr_accessible behavior until I get time to update.

Hope that helps!

kyleashipley··on Internet Tolls And The Case For Strong Net Neutrality
Isn't it valuable to Comcast as well in the long run? I know several people who have updated their internet packages to ensure high quality Netflix streaming. I have to imagine Comcast's profits on that upgrade far exceed the delivery costs.
kyleashipley··on Email Introduction Etiquette
I don't have a ton of love for LinkedIn, but this is a problem they've taken on and solved to some degree. If I have a second-degree LinkedIn connection, I can request an intro through an intermediary, who has the chance to reject it, pass it along, and so on.

I'm not sure how much the investment community uses LinkedIn, but it seems like the closest thing to a solution right now.

kyleashipley··on Steam Machines – Prototype Details
I agree with winslow that the main initial attraction is the novelty of the genre. I got into League of Legends a few years ago before DOTA2 was announced, and I find that it's a bit more beginner-friendly and balanced than DOTA. (DOTA fan counter-point: League of Legends is overly simplistic and pay-to-play.)

Coincidentally, the League of Legends world championship final is occurring tonight. Anything you learn about the genre or strategy will apply somewhat to any game in the MOBA (multiplayer online battle arena) genre, so check it out if you're interested in learning more. Riot Games has hired an entire team of casters and analysts, and I find the commentary to be mostly insightful and enjoyable compared to American sportscasters.

To bring this on-topic: I wonder whether Valve will allow non-Steam games to run on SteamOS. League of Legends is directly competitive with Valve's own DOTA2, but Valve has historically allowed you to use Steam purely as a launcher. My biggest fear is that this is yet another walled garden, just one that has embraced its digital nature sooner and better.

kyleashipley··on iOS7 has broken Audiobooks
It seems like the music app received some half-baked changes across the board. For example, you can no longer shuffle all music in a particular genre through the app. They added (or maybe always had) an option to shuffle through Siri ("Play some blues"), but there are some frustrating edge cases:

"Play some video game music." "I'm sorry, I can't help you with videos."

I've had to resort to creating smart playlists for most of my genres, which is highly inefficient.

I find the new interface for shuffling to be confusing as well. It's now the word "Shuffle" with a white background, which changes to "Shuffle All" with a slight pink tinge when you tap it. If tapping "Shuffle" turns shuffle on, then why would tapping "Shuffle All" turn it off? It just seems like a confusing experience.

Overall, I'm fairly happy with iOS 7. But outside of radio, the music app feels like a regression.

kyleashipley··on The Start-Up Trap
Although I've been a hardcore TDD advocate from time to time, I find myself writing fewer and fewer tests in the early stages these days.

In the very earliest days of a startup, you can easily hold the entirety of the problem space in your head. Refactoring is simple, tests or not. I can destroy and rewrite a feature from scratch in hours or days. A non-trivial number of the features I'm writing will not exist in any form a week or two later. This is not a problem with process or planning; this is the nature of a startup.

I think that TDD is immensely valuable as a team and product grows, but claiming that your startup will fail because you aren't applying engineering "best practices" from day 1 is counter to most successful startups I've worked with.

kyleashipley··on Pixel-Based Websites: Resources, Tutorials, And Examples
We tried reaching out to some gaming blogs, but didn't get a lot of traction. We learned a lot from the Kickstarter process though (blog post?), so if we do relaunch, we'll be smarter about the media coverage.

Keep an eye on our Twitter account/mailing list if you want to see what we do with it. We might go completely open source and just provide build instructions, or we might take another crack at it.

kyleashipley··on Pixel-Based Websites: Resources, Tutorials, And Examples
You're totally right. One of my friends helped out with that GIF, and I didn't spot check it closely enough. Thanks for the tip!
kyleashipley··on Pixel-Based Websites: Resources, Tutorials, And Examples
Man, this would've been useful a few weeks ago!

We posted this as a ShowHN recently, but we built http://www.awesomecontroller.com/ as a side-scrolling pixel site.

We used Pixen on OSX for pixel art, and it was really simple to get started. I'd highly recommend it for simple pixel work if you're not a Photoshop guru.

← PreviousPage 2 of 2