HNHacker News
TopNewBestAskShowJobs

ariabuckles

257 karma · joined September 5, 2014

submissionscomments
ariabuckles··on Facebook manager quit after being 'harassed' over views on diversity
Sophie was the best thing to happen to React. She lead React’s adoption at the first company outside of Facebook, and single-handedly answered almost every question about React on stackoverflow for the first two years of its existence. She was the number one github contributor to and bug-fixer for React before she joined Facebook.

React as we think of it today simply would not exist without Sophie. The entire front-end ecosystem would be drastically worse.

It’s really sad to hear she won’t be leading the react team anymore, and worse to hear how some employees of Facebook treated her.

She’s hands down the best engineer I’ve ever worked with, and also a wonderfully kind and caring person.

Her leaving Facebook is a loss for the entire tech community. I hope her next endeavours treat her with the respect she deserves.

ariabuckles··on Ask HN: Who is hiring? (April 2018)
Horizons School of Technology | Instructor / Software Engineer (JavaScript) | San Francisco, CA | ONSITE

Horizons is building the modern technology university. We're building a better software bootcamp and helping interested students learn about tech and programming. If you've TA'd in the past or enjoy explaining things (and thinking about how to do that well), we'd love to talk to you. I'm one of the instructors and we're looking for more to join for our high enrolment this summer.

About us: https://www.joinhorizons.com/faq

Job listings: https://angel.co/joinhorizons/jobs/307522-software-engineeri... https://angel.co/joinhorizons/jobs/181014-junior-instructor-...

Email Darwish (darwish@joinhorizons.com) or me (aria@joinhorizons.com) if you have questions. If you're interested in chatting about edtech and teaching, I'd love to hear from you!

ariabuckles··on Node v9.8.0
They're available right now behind the flag `--experimental-modules`, and planned to be released without a flag in node 10.

And yes, still requires .mjs unfortunately.

https://nodejs.org/api/esm.html https://medium.com/the-node-js-collection/an-update-on-es6-m...

ariabuckles··on Show HN: ShakyDraw – Hand-drawn block diagrams from plain text
This looks like it uses a very similar algorithm to https://github.com/dbushong/shaky , which is a port of @mraleph's 2012 talk (@mraleph is cited in this site's about page)
ariabuckles··on Why I moved from Angular to React
This sounded scary to me at first, but in practice I've found it to be the opposite.

Separating css, html, and js makes sense when you're writing a document, and the content is the html and the css is strictly formatting.

It makes less sense when you're writing an app, and the styling of the html is an integral part of what is being created. The javascript works the same way; it's often integral to what's being rendered, not just patchwork adding small amounts of functionality to an existing document.

But probably most importantly is that react gives you a different way of separating concerns: it's very easy to put different chunks of the UI into different components/files, so your app is divided by functionality, instead of divided by technology. Keeping the html (and sometimes css) with the js that uses it helps increase the cohesion of small units in your UI that intimately work with each other, while separating those from other js/html/css for other units.

ariabuckles··on A monthly release cadence for React Native
My workflow so far (pre react-native-git-upgrade) has been to `git commit`, then run `react-native upgrade` and say yes to all the prompts, and then afterwards manually `git add -p` the changes that react native wanted to make to my files (the proposed changes made them "standard" and got rid of customizations, but also upgraded legacy parts from the original templates).

For each change, then, I try to upgrade any react-specific code while preserving my own changes to that file.

It's certainly cumbersome and I avoid doing it too often, but I've found this manageable.

ariabuckles··on The Signal protocol for Node and browsers
You're right; upvoted.

I'm surprised that none of these global objects are set to not-configurable/not-writeable :/.

And yes, the general case of running untrusted js code in the same environment your code isn't safe.

ariabuckles··on The Signal protocol for Node and browsers
If you wanted to test for a native function, I think you could probably do something like:

    (function() {}).__proto__.toString.apply(window.crypto.getRandomValues)
which grabs the toString function off the Function prototype without relying on explicit/modifiable globals.

However I'm not sure if the testing for a native method idea works in general (it might be possible to say something like `window.crypto.getRandomBytes = Array.prototype.slice`, which would show up as a native function, but leave the original, likely 0, bytes in the input array). This might still be okay, because in chrome that shows up as "function slice() { [native code] }" instead of "function getRandomValues() { [native code] }", but it might not; I'm not sure I have the appropriate js/security background to say.

ariabuckles··on Ask HN: Who is hiring? (November 2016)
Magoosh | Berkeley, CA | FULLTIME | ONSITE Senior Software Engineer

Magoosh is fixing a broken test prep industry.

Why should students have to put up with exorbitant prices for boring test prep classes and books that might not even work? Our mission is simple: create products that give students everywhere access to enjoyable, affordable, and quality test prep. We help millions study at their own pace, on their own time regardless of location, social status, or background.

We’re looking for a Senior Software Engineer to help us improve our products, shape engineering process, and help us grow our small (currently just Zack and I!) but impactful engineering team. So far we use Rails, PhoneGap + Angular, and ReactNative. We’re hosted on AWS.

You have many of the following...

* 3+ years of software engineering experience

* Experience building and releasing web and/or mobile applications

* Experience interviewing software engineering candidates

* A passion for making a difference and leveling the education playing field

Extra credit if you have...

* Experience recruiting and hiring software engineers

* UI & UX experience

Get a feel for our company and apply here: http://magoosh.com/careers

And feel free to email me (aria@magoosh.com) or our recruitment manager Meghan (meghan@magoosh.com) if you have any questions! (If you don't have questions and just want to apply, please hit up the apply link above instead <3)

ariabuckles··on Ask HN: Who is hiring? (October 2016)
Magoosh | Berkeley, CA | FULLTIME | ONSITE Senior Software Engineer

Magoosh is fixing a broken test prep industry.

Why should students have to put up with exorbitant prices for boring test prep classes and books that might not even work? Our mission is simple: create products that give students everywhere access to enjoyable, affordable, and quality test prep. We help millions study at their own pace, on their own time regardless of location, social status, or background.

We’re looking for a Senior Software Engineer to help us improve our products, shape engineering process, and help us grow our small (currently just Zack and I!) but impactful engineering team. So far we use Rails, PhoneGap + Angular, and ReactNative. We’re hosted on AWS.

You have many of the following...

* 3+ years of software engineering experience

* Experience building and releasing web and/or mobile applications

* Experience interviewing software engineering candidates

* A passion for making a difference and leveling the education playing field

Extra credit if you have...

* Experience recruiting and hiring software engineers

* UI & UX experience

Get a feel for our company and apply here: http://magoosh.com/careers

And feel free to email me (aria@magoosh.com) or our recruitment manager Meghan (meghan@magoosh.com) if you have any questions! (If you don't have questions and just want to apply, please hit up the apply link above instead <3)

ariabuckles··on iPhone 7
They generally don't market the amount of RAM; I had to scour blogs after the SE launch.

It seems very unlikely they'd go from 2GB (in the 6S and SE) to 1GB though. Most likely 2GB. I could see 4, but that seems quick on them to increase it compared to usual.

ariabuckles··on iPhone 7
It is very hard to find non-tight pockets on women's clothing, if you're lucky enough to find pockets at all.
ariabuckles··on Ask HN: Who is hiring? (September 2016)
Magoosh | Berkeley, CA | FULLTIME | ONSITE Senior Software Engineer

Magoosh is fixing a broken test prep industry.

Why should students have to put up with exorbitant prices for boring test prep classes and books that might not even work? Our mission is simple: create products that give students everywhere access to enjoyable, affordable, and quality test prep. We help millions study at their own pace, on their own time regardless of location, social status, or background.

We’re looking for a Senior Software Engineer to help us improve our products, shape engineering process, and help us grow our small (currently just Zack and I!) but impactful engineering team. So far we use Rails, PhoneGap + Angular, and ReactNative. We’re hosted on AWS.

You have many of the following...

* 3+ years of software engineering experience

* Experience building and releasing web and/or mobile applications

* Experience interviewing software engineering candidates

* A passion for making a difference and leveling the education playing field

Extra credit if you have...

* Experience recruiting and hiring software engineers

* UI & UX experience

Get a feel for our company and apply here: http://magoosh.com/careers

And feel free to email me (aria@magoosh.com) or our recruitment manager Meghan (meghan@magoosh.com) if you have any questions! (If you don't have questions and just want to apply, please hit up the apply link above instead <3)

ariabuckles··on Stepping Backwards from AngularJS to JQuery – An Experiment
I've run into a lot of people who found angular hard to pick up; it's not just you.

One of them now works on the React team, and I found it pretty easy to pick up from the official docs: https://facebook.github.io/react/ . I recommend not bothering with stuff other than the base react library at first (although jsx/babel is nice); you can use react without it and potentially learn that later.

It's also totally valid to just start with basic js/html/jquery. The Mozilla's MDN docs for most html/js things are decent, and jQuery's api docs are pretty good in my experience.

ariabuckles··on Ask HN: Who is hiring? (August 2016)
Magoosh | Berkeley, CA | FULLTIME | ONSITE Senior Software Engineer

Magoosh is fixing a broken test prep industry.

Why should students have to put up with exorbitant prices for boring test prep classes and books that might not even work? Our mission is simple: create products that give students everywhere access to enjoyable, affordable, and quality test prep. We help millions study at their own pace, on their own time regardless of location, social status, or background.

We’re looking for a Senior Software Engineer to help us improve our products, shape engineering process, and help us grow our small (currently just Zack and I!) but impactful engineering team. So far we use Rails, PhoneGap + Angular, and ReactNative. We’re hosted on AWS.

You have many of the following...

* 3+ years of software engineering experience

* Experience building and releasing web and/or mobile applications

* Experience interviewing software engineering candidates

* A passion for making a difference and leveling the education playing field

Extra credit if you have...

* Experience recruiting and hiring software engineers

* UI & UX experience

Get a feel for our company and apply here: http://magoosh.com/careers

And feel free to email me (aria@magoosh.com) or our recruitment manager Meghan (meghan@magoosh.com) if you have any questions!

ariabuckles··on Learning to code as a 30-year-old kid with Apple’s Swift Playgrounds
Khan Academy's programming environment might have some useful content: https://www.khanacademy.org/computing/computer-programming

It's a live programming environment with instruction to go along with it.

(Disclaimer: Used to work there; didn't work on CS)

ariabuckles··on Ask HN: Who is hiring? (July 2016)
Magoosh | Berkeley, CA | FULLTIME | ONSITE Senior Software Engineer

Magoosh is fixing a broken test prep industry.

Why should students have to put up with exorbitant prices for boring test prep classes and books that might not even work? Our mission is simple: create products that give students everywhere access to enjoyable, affordable, and quality test prep. We help millions study at their own pace, on their own time regardless of location, social status, or background.

We’re looking for a Senior Software Engineer to help us improve our products, shape engineering process, and help us grow our small (currently just Zack and I!) but impactful engineering team. So far we use Rails, PhoneGap + Angular, and ReactNative. We’re hosted on AWS.

You have many of the following...

* 3+ years of software engineering experience

* Experience building and releasing web and/or mobile applications

* Experience interviewing software engineering candidates

* A passion for making a difference and leveling the education playing field

Extra credit if you have...

* Experience recruiting and hiring software engineers

* UI & UX experience

Get a feel for our company and apply here: http://magoosh.com/careers

And feel free to email me (aria@magoosh.com) or our recruitment manager Meghan (meghan@magoosh.com) if you have any questions!

ariabuckles··on Ask HN: Who is hiring? (June 2016)
Magoosh | Berkeley, CA | FULLTIME | ONSITE Senior Software Engineer

Magoosh is fixing a broken test prep industry.

Why should students have to put up with exorbitant prices for boring test prep classes and books that might not even work? Our mission is simple: create products that give students everywhere access to enjoyable, affordable, and quality test prep. We help millions study at their own pace, on their own time regardless of location, social status, or background.

We’re looking for a Senior Software Engineer to help us improve our products, shape engineering process, and help us grow our small (currently just Zack and I!) but impactful engineering team. So far we use Rails, PhoneGap + Angular, and ReactNative. We’re hosted on AWS.

You have many of the following...

* 3+ years of software engineering experience

* Experience building and releasing web and/or mobile applications

* Experience interviewing software engineering candidates

* A passion for making a difference and leveling the education playing field

Extra credit if you have...

* Experience recruiting and hiring software engineers

* UI & UX experience

Get a feel for our company and apply here: http://magoosh.com/careers

And feel free to email me (aria@magoosh.com) or our recruitment manager Meghan (meghan@magoosh.com) if you have any questions!

ariabuckles··on Ask HN: Who is hiring? (May 2016)
Magoosh | Berkeley, CA | FULLTIME | ONSITE Senior Software Engineer

Magoosh is fixing a broken test prep industry.

Why should students have to put up with exorbitant prices for boring test prep classes and books that might not even work? Our mission is simple: create products that give students everywhere access to enjoyable, affordable, and quality test prep. We help millions study at their own pace, on their own time regardless of location, social status, or background.

We’re looking for a Senior Software Engineer to help us improve our products, shape engineering process, and help us grow our small (currently just Zack and I!) but impactful engineering team. So far we use Rails, PhoneGap + Angular, and ReactNative. We’re hosted on AWS.

You have many of the following...

* 3+ years of software engineering experience

* Experience building and releasing web and/or mobile applications

* Experience interviewing software engineering candidates

* A passion for making a difference and leveling the education playing field

Extra credit if you have...

* Experience recruiting and hiring software engineers

* UI & UX experience

Get a feel for our company and apply here: http://magoosh.com/careers

And feel free to email me (aria@magoosh.com) or our recruitment manager Meghan (meghan@magoosh.com) if you have any questions!

ariabuckles··on Ask HN: Who is hiring? (April 2016)
Magoosh | Berkeley, CA | FULLTIME | ONSITE Senior Software Engineer

Magoosh is fixing a broken test prep industry.

Why should students have to put up with exorbitant prices for boring test prep classes and books that might not even work? Our mission is simple: create products that give students everywhere access to enjoyable, affordable, and quality test prep. We help millions study at their own pace, on their own time regardless of location, social status, or background.

We’re looking for a Senior Software Engineer to help us improve our products, shape engineering process, and help us grow our small (currently just Zack and I!) but impactful engineering team. So far we use Rails, PhoneGap + Angular, and ReactNative. We’re hosted on AWS.

You have many of the following...

* 3+ years of software engineering experience

* Experience building and releasing web and/or mobile applications

* Experience interviewing software engineering candidates

* A passion for making a difference and leveling the education playing field

Extra credit if you have...

* Experience recruiting and hiring software engineers

* UI & UX experience

Get a feel for our company and apply here: http://magoosh.com/careers

And feel free to email our CEO Bhavin (bhavin@magoosh.com) or me (aria@magoosh.com) if you have any questions!

ariabuckles··on Ask HN: Who is hiring? (March 2016)
Ask HN: Who is hiring? / Who's hiring?

Magoosh | Berkeley, CA | INTERNS | ONSITE Full-stack intern in Berkeley

Magoosh's mission is simple: create products that give students everywhere access to enjoyable, affordable, and quality test prep. We help millions study at their own pace, on their own time regardless of location, social status, or background.

Our engineering team is small (just me and Zack!) so from day one you'll own projects and contribute directly to code running in production. We use Rails on AWS with MySQL, but are always trying things out, and are eager to try new tools that keep us fast and happy.

Get a feel for our company and apply here: http://magoosh.com/careers And feel free to email me (aria@magoosh.com) or Zack (zack@magoosh.com) if you have any questions!

ariabuckles··on Ask HN: Who is hiring? (February 2016)
Magoosh | Berkeley, CA | INTERNS | ONSITE Full-stack intern in Berkeley

Magoosh's mission is simple: create products that give students everywhere access to enjoyable, affordable, and quality test prep. We help millions study at their own pace, on their own time regardless of location, social status, or background.

Our engineering team is small (just me and Zack!) so from day one you'll own projects and contribute directly to code running in production. We use Rails on AWS with MySQL, but are always trying things out, and are eager to try new tools that keep us fast and happy.

Get a feel for our company and apply here: http://magoosh.com/careers And feel free to email me (aria@magoosh.com) or Zack (zack@magoosh.com) if you have any questions!

ariabuckles··on Uninstalling Facebook app saves up to 15% of iPhone battery life
https://www.messenger.com also gives a messenger-app like experience on web, with no non-messenger notifications :D.
ariabuckles··on Even the LastPass Will Be Stolen
Nice! I also wrote my own stateless password manager: https://www.npmjs.com/package/viridium

It handles changing a password by keeping a file of the salts, which is theoretically safe to post to a public github (mine's in my dotfiles repo, though it's a private bitbucket repo)

ariabuckles··on Khan Academy's React style guide
Correct. That and passing mutable backbone models as props went poorly back when we did more of that. Mutable props are hard to reason about and go against all of the recommendations for React props. (There are plenty of good use-cases of backbone out there though.)
ariabuckles··on Khan Academy's React style guide
1. If you're not passing the backbone models to React components, this sounds fine. backbone models as props ends up being really painful because of how mutable they are, and when we tried to manage that with mixins, it was buggy and caused problems (note: I'm not familiar with the actual mixin we used there and whether there was a better way to do it). Since most flux implementations are pretty stateful/mutable themselves, using mutable backbone models there, so long as you copy data out to pass to react views, seems safe. Though I'm excited long-term about the immutable flux implementations (https://github.com/rackt/redux)

2. We had a library originally written by Ben Alpert (now core react team) that handles all of our interactive svgs [1]. Since KA has a lot of legacy code there, and there hasn't been an immediate benefit to porting it (which would take a pretty significant time investment, on the [very roughly] order of a couple dev-months), this is still mutable jQuery/raphael code. There have been a lot of talks of eventually porting this to react, but the immediate need for it hasn't been there yet. However, I did write a React wrapper around much of this code which is used by newer interactive widgets [2].

[1]: https://github.com/Khan/khan-exercises/blob/master/utils/gra...

[2]: https://github.com/Khan/perseus/blob/master/src/components/g...

ariabuckles··on React v0.13 released
I'm really excited for `React.cloneElement` and inlining of `React.createElement`! `React.cloneElement` makes a bunch of tricks that used to require hacks much cleaner, and finally promotes cloneWithProps to non-addon API and removes the confusing magic. And if `React.cloneElement` starts getting compiled into object literals it's going to speed up large render calls significantly, and make the overall React API feel a bit simpler (to me).
ariabuckles··on Ask HN: Why keep living?
I've been through some of this myself, and have several friends who've gone through it as well.

I cannot recommend finding a good cognitive-behavioural therapist enough. Cognitive behavioural therapy with a good therapist actually helps; I've seen it with other people and myself.

Outside of that, personally I've that while external validation like you're trying can be nice, it doesn't always fight off intrinsic issues. For short term things, I've found going back to things I know I enjoy or used to enjoy helpful--finding friends I haven't hung out with in a while, or a videogame I know I like to play, or a favourite TV show, or a personal project I used to care about. I usually don't want to do these things before I start, but find they're easier to get back into than I expect.

This can be really tough, and I'm sorry you're going through it. But it is something you can get through!

But please find a good therapist (who lists cognitive behavioural therapy as something they specialize in)! And if the first person you find isn't someone you like, try another. I promise there are wonderful ones out there!

ariabuckles··on Why CommonMark Isn't the Solution
Oh, I'm quite aware :). It's an effort of extreme dogfooding of https://github.com/khan/perseus. This post doesn't use anything interesting, but if I wanted to post about some of the interactive math content we're doing there, I could actually embed it. It is also useful to learn how annoying it is to embed (answer: much more annoying than I'd like).
← PreviousPage 2 of 2