There are a lot of odd choices here. Is there a mailing list thread or something where this was worked out? I couldn't seem to find one on a quick scan, but I don't know where these discussions happen these days.
I really don't want to assume incompetence or ignorance at all since I'm sure someone worked really hard on this. But I'm genuinely puzzled by a lot of what's going on.
Sequoia Capital - REMOTE (but must be US based and enrolled in a college/university)
I'm looking for a software engineering intern for the summer at Sequoia!
Here's a tl;dr:
- It's paid.
- It's full-time.
- It's remote.
- The work will be based around a discrete project that we will select alongside the intern to give them something to add to their CV rather than just "I worked at a place."
- The position is on my team of experienced folks who will help appreciably level up the intern's skills while also exposing them to a lot of interesting tech and people.
- Candidates must be U.S.-based and currently enrolled in an institution of higher learning (i.e., college or university, not a bootcamp, sorry! We're working on options for those folks soon).
My team works on a wide range of projects, from simple integrations to full on AI pipelines and everything in between, so the project possibilities are wide. If that sounds interesting, please send me an email at jmcanally@sequoiacap.com with "Intern" in the subject. In the body of the email, include a short paragraph about yourself and your studies, a list of any project ideas you might have, and any links we might find interesting (e.g., GitHub, blog, social media, etc.). If you have a resume/CV, please attach that as well.
(Side note: please do not use an LLM to compose this email. We want to talk to you not a machine! )
I'll be accepting applications of interest through Friday April 19. Once you reach out, I'll be in touch with next steps and a very short technical assessment. The assessment will be 3 questions and should take much less than an hour to complete.
I look forward to hearing from you! If you have any questions, please feel free to email me or leave a comment here. We're really looking for a wide set of applicants from all backgrounds, schools, and even programs of study (assuming you can pass the assessment!), so please share at will!
Properly used white list parameter controls (i.e., strong parameters) that are the default Rails behavior at this point would have prevented this bug completely.
This is a little like saying the best way to avoid this bug is to not have the bug. But that's true of all bugs. The C apologists used to say, "just bounds check properly!"
Maybe my experience was different but the lack of smell from COVID was farrrrr more acute and noticeable than I’ve ever had with a sinus infection. It was like the sensation just starkly disappeared rather than diminished. It was really one of the most disconcerting symptoms I had if I’m honest!
There's a physical aspect as well as a mental aspect to it. Media is constantly feeding you information about loss of smell (even though I've lost it at least a few times before with viruses).
I am very much in the skeptical camp when it comes to many things with COVID, and open to all sorts of arguments that the nature of the virus and treatments for it do not adhere to what you might call the "orthodox" perspective presented on CNN and enforced by Facebook and Twitter moderators with comms degrees. That said, while the nocebo effect is definitely a thing, my own experience with my first infection was different enough from any other illnesses to this point that I'm convinced these symptoms and their severity were not just a matter of media hype. My first sign of COVID was major conjunctivitis in one eye, which for about an hour was associated with enough pressure I thought I might need to go to urgent care. Then, I had been completely recovered for about a week after I was infected, thought I was over it completely, and then noticed I couldn't smell the family dog and the only thing I was still able to taste was pickles. It should at least be possible to acknowledge the novelty of these symptoms without worrying that they make any sort of case for the propriety of the response or the encouragement of the public to treat SARS-CoV-2 like a virus from a zombie movie.
A friend of mine also lost his sense of smell for weeks, he also found that he absolutely hated the taste of hot coffee for months (cold brew didn't bother him)
My original one was simply that anecdotal accounts of loss of smell didn't seem to pan out to a significant difference in frequency compared to other common cold and flu's.
I could buy that maybe COVID had "some effect on smell" at about the same rate as the common viruses, but it was the intensity which made it more noticeable.
That's definitely possible, I was only talking about frequency. Intensity is a tricky one to track because it can only be based on self-report studies, and you only hav a frame of reference if a previous illness at least partially knocked out your sense of smell.
My ex's kids turned off the freezer in my garage while playing (turned a knob they didn't understand) causing all the food to spoil and I didn't smell it because I couldn't smell it. Turns out it was the media's misinformation in my garage all along.
I have a lot of friends (including my spouse) who are teachers, and I can pretty confidently say that an office environment/culture/work sphere as we as engineers are used to is vastly different than working in a classroom. We don’t often value experience because, you’re right, often times fresh eyes do bring useful insights. But in the case of teaching (and probably many other things), consensus seems to be that experience does vastly affect one’s effectiveness.
I applaud the OP for their attempt to bring something new, but I feel like if maybe they’d waited a couple more years they may have an easier time thinking through the problem set and creating a product to fit the need. Perhaps I’m wrong! But that’s just my feeling from the many conversations I’ve had with teacher friends.
> We don’t often value experience because, you’re right, often times fresh eyes do bring useful insights.
This isn’t quite what I’m getting at. Even in an office environment, I bias towards valuing experience over naive and idealistic attempts to fix everything that’s wrong.
My point is closer to: those fresher experiences are ephemeral and also an important signal alongside deeper experience and institutional knowledge.
Office environments are also full of inexperienced people trying to fix systems they don’t understand.
My point is not that inexperienced people should be taking over, but that people in positions to institute change should be listening to newcomers along with seasoned veterans. I don’t see this as an either/or stance.
Sure, and it means exactly what you expect it to mean in ruby (though tinged with 'bad idea', in the case of aliasing variable names), so that's even more reason to use it (find a way to mesh with irb or whatever they're using as 'backend'). It's 'ruby shell' after all.
I had, literally, eight different majors over my Bachelor's career, with almost enough credits for two whole B.A. degrees by the time I was done. I just finally picked a major that I had the most credits towards and was cheapest/easiest to finish distance learning (a degree in theology). Of course, by this time, I was over 30 and had already built a career sans degree and (if I recall correctly on timing) was working at Apple as a software engineer.
I've always been an autodidact not as a point of pride but instead of necessity. I grew up really poor and, given it was Alabama, our education/library system wasn't great. I taught myself a lot of things, and because of that, had a lot of interests, which led to a...er...chaotic college experience when the road to education was less narrow.
My point is, yes a lot of people go through this, and the only path you're limited to is the one you pick. Getting into a career in engineering without a degree does require some hustle to get over the initial inertia, but you can do it. If you feel like you have the knowledge and wherewithal to make it happen, major in a "backup" or something that interests you. If not, there's no shame in it, so pursue the plan you laid out. All in all, the ultimate result is that you learn how to think about things and pick up some skills along the way. However you and your brain get there isn't really defined.
(Ninja edit to say: I was a low B student in high school, had a 3.2 GPA in my bachelor's work. I took some master's classes from Harvard when I could afford them, and I was knocking them down with a 4.0. Environment makes a big difference too, so don't feel like you're stuck in what you've tried. You might just need to find the right place.)
A framework is no good if it requires that the engineers working with it are excellent in order to not create a mess. A great framework or language _should_ empower participants with average ability and experience to produce good results.
What's an example of a framework that meets this bar? In my experience, the messiness is generally a function of scope, team size and technical ability. Some languages / frameworks give you better or worse tools for managing that scalability, but context matters (right tool for the job) and none can guarantee a good result if the team is weak. What really matters is the technical leadership, who must have both the experience, and sufficient influence, to avoid going down a path of crippling technical debt that eventually strangles the system.
As far as Rails goes, for all it's shortcomings, people forget what web development was like in 2003. The dominant paradigms were overwrought XML-powered J2EE with incredibly low power-to-weight ratio for web development, or unstructured PHP wild west stuff. These days every language has a framework that was heavily influenced (directly or indirectly) by Rails. Sure I wouldn't use Rails everywhere (1000+ engineer team: java, lots of concurrency: elixir/erlang, lower-level large systems: go/rust, etc), but it still has a great sweet spot from the prototype to moderate sized web app / API. Things that become weaknesses as you scale (eg. ActiveRecord pattern) are based on contextual tradeoffs that need to be made thoughtfully versus declaring them table stakes for all web frameworks.
With Rails, you can call `relation.map(&:id)` and `relation.pluck(:id)` and get the same thing — an array of `id`. But using map is 50x slower because it loads the entire model into memory (ActiveModel is very expensive) before enumerating; pluck fires a query and hits the result set from ActiveRecord — very inexpensive!
Average ability participants then fall for this foot gun (and others like it) and end up designing things poorly. One overlook quickly turns into accelerant at scale. This isn't unique to Rails, but Ruby — the delight that it is — makes it almost too trivial to do.
I've seen this happen at Rails shops many of us have an account on, where I wouldn't consider the people I worked with average ability participants either.
But if you’re going to render those `relation` records in a paginated list anyway, pulling them into memory is superior so you don’t hit another DB round trip delay.
Which is to say, there’s a lot of ways to do things, and trade offs between the different ways, but isn’t that the case with any library or framework?
Sure – if – that's fine and optimal! In larger apps, where there's more complexity, there are so many paths that aren't that trivial and that's where the trouble begins.
I dont understand how come a framework will help you avoid that.
You can do a similar performance issue with anything:
here is a raw example: give to anyone a non-ORM framework and the chances of someone hitting multiple times the DB to query the same records increases with team size and app scope.
I am not sure there is a framework that can protect your colleagues from doing select * and then count the in memory objects instead of doing a count on DB.
I really don't want to assume incompetence or ignorance at all since I'm sure someone worked really hard on this. But I'm genuinely puzzled by a lot of what's going on.