So I just checked out some crash videos on YouTube. The Model S appears to have a surprisingly small crumple zone.
That's just my layman's perspective, but take a look and see if you don't agree. The front readily collapses, but just past the center-point of the wheels (presumably about where the motor area starts) it's a brick wall and the whole 2+ ton vehicle just stops in it's tracks.
Compare that to Volvo crash tests, especially the Euro NCAP Small Offset. The front fender of the Volvo disintegrates, but then the wheel actually flys off and the front of the cabin even appears to absorb some energy. It looks like a much softer landing. The interior shots are even more impressive with less deformation and a lot more padding with a lot less slack in the airbags.
I didn't run across any Model S tests where it looked like that long hood was actually doing much for it since it appears to hit some sort of impenetrably stiff wall halfway through. You can look at the crash test video during a Musk demonstration and see the same thing. There's some sort of structural member there in front of the motor that just doesn't seem to give way.
BTW, it actually appears the Honda Accord mentioned is slightly safer (except for pedestrians) despite the tested model being 5 years older.
The Model S is no doubt a very safe vehicle overall. But it's not the second coming, and Musk's talk of crumple zones appears to be more Marketing than Truth (and the ratings bear that out).
That "Tesla Model S breaks roof test" for example? Not the strongest. Not even at the time of testing. Here's the current generation XC90's results for example: http://www.iihs.org/iihs/ratings/vehicle/v/volvo/xc90-4-door.... Over 10 tons. The previous generation was off about a ton. As far as I can figure out both figures are greater than the Model S's despite the fan-faire.
In addition to the engine going under the vehicle (even at fairly low speed crashes; just watch NHSTA videos on YouTube), the front motor in a Model S is more dense and weighs about the same as a 4 cylinder engine, transmission and accessories. I'm gonna call that a wash until I see evidence to the contrary.
Straight on collisions aren't even the toughest ones to pass. It's the small offset tests that really seem to give manufacturers a hard time. And no engine there.
There's still annual maximums, in-network coverage, PMO, HMO, etc. The minimums can be pretty basic.
It looks like the ACA doesn't really do anything to change the picture for a $474,000 medical bill. The guy got charged $39 each for over 200 glucose checks. That's the price of a new meter for every check.
Actually, annual maximums on ("essential") benefits are illegal under the ACA[1] - the only "annual maximums" allowed are for {deductible, out of pocket}, at which point they are supposed to cover 100% of covered claims.
I don't obviously see the specific anecdote you're discussing in the thread, so I can't tell if what transpired is because it (somehow) didn't blow either of those thresholds, or because it wasn't an "essential" benefit, or simply pre-dated those terms of the ACA becoming effective.
Thanks for correcting me. I could've sworn I saw annual maximums when I looked on healthcare.gov but maybe I mistook the max out of pocket for a max annual.
The example I used is the case presented in the video. I just googled for Bob Weinkauf.
I was also curious when this happened. Looks likely to be under the ACA unless it took years to hit the news though.
So I don't know. Maybe he went to the emergency room and it was out of network under his plan, leaving him to shoulder the costs. I didn't dig much after skimming for an approximate date.
> The fact of the matter is, people make bad choices. People who make bad choices are more likely to be poor. Lack of impulse control is extremely prevalent in poor communities. Like the GP, I was poor, I know poor people, and 95% of them are just shit at thinking long term.
This is true of most Americans and is incredibly condescending. The poor are better with the money they do have than the middle class by a huge margin IME. The poor by and large don't blow their money on "fine dining" or new cars. They change their own oil. They don't spend over $100/month on cable TV packages. You can find exceptions to all those of course, but they prove the rule IME.
You're right, they blow their money on not-so-fine dining (my poor friends think McDonalds is cheaper than "Real Food").
Saying that it's true of most Americans obscures the systemic problem of scratch-offs and 40s on the weekend. And there is clearly a difference when you're doing these things with disposable income and doing it when you do not have disposable income -- one indicates a problem, and I don't think that it's an economic one.
I know middle income people spending their money on craft beer on the weekend and not participating in their company 401K. Or living effectively paycheck to paycheck. They may have "disposable" income, but only in the sense that they can float emergency spending on credit.
So yeah, there's a difference, but it's one of privilege.
Bad long-term financial decisions aren't exclusive to the poor.
You grew up poor. That doesn't mean your new middle-class peers had to learn the same lessons you did. They aren't middle class because they're smarter, more disciplined or have a better work ethic. They're middle class because they were born middle class.
Wanting to improve class mobility is one thing. Blaming the poor for not doing so on their own is another.
No. I don't. I mean that they had the most important safety net of all: Family with the will and ability to help financially.
I'm genuinely curious what financial life lessons you think a middle class kid is learning that a poor kid doesn't understand at a much deeper level.
My own experience is that (some) middle class kids succeed despite their own failures (dropping college classes before the grade becomes part of record stands out in my mind), and then attribute their success to their superior work ethic and intellect.
If most poor people fail to move up the class ladder, then in their same situation you're just as likely to fail. It's either that, or believe yourself somehow innately superior. I can't really think of a third option. It's like the adage about being surrounded by assholes.
You're right. Life isn't fair. But that doesn't mean the person cleaning my house isn't entitled to financial stability. I'm not religious, but I can't think of a secular version of "but for the grace of God".
BTW, your post didn't get the attention I'd hoped, but THANK YOU for "fighting the good fight".
IMO this stuff is more important than any technical choice you could possibly make. And I happen to think some technical choices are pretty vitally important. But even so...
thank you very much for your comment, I really appreciate it. Yes, most of the time the not-technical post got submerged. But I'm quite happy with the feedback I got with my first blog post.
Like the Agile Manifesto it's all about balance (IME).
One of the (many) ways I failed as a manager was to not trust my gut. To want to enable my team, even when what I thought they were pitching was questionable. I'd hoped that some technology, or this particular team would prove my own previous experience wrong. That through the power of team work and ambition it would turn out differently this time, but most of all, I couldn't figure out how to present a convincing argument to the team why I was skeptical and I didn't want to leave it at "because I said so".
On reflection, a cure might've been to ask for further analysis, both rewards and risks, balanced against costs. But that often comes with it's own cost and what I really wanted to say was: "We're not doing this because the solution in hand is good enough and better at any non-trivial price doesn't serve our business interests."
Of course being a developer myself that's a difficult message to internalize.
I guess it comes down to: I'm still not sure how to handle this situation, but experience definitely needs to be weighed heavily IMO and if your processes (and management experience) are lacking in maturity a lack of leadership in preventing a less experienced team (though very technically skilled, enthusiastic and hard working!!!) from making bad decisions can be devastating as well.
I guess what I'm trying to say is that, through my own mistakes managing teams, I think a lack of confidence and projected authority can be just as bad as any of the sins listed here, and is an important balance to consider on the flip-side of Arrogance.
That said, the rest of the list here is spot-on. The only nit I'd pick is Sloth. A description closer to my own experience might be one where the requirements are known, but not communicated thoroughly and clearly.
When a developer can say: "Show me where I was told this" and you can't respond with a URL to an Issue, instead relying on a months old email, Slack message that wasn't acknowledged, or no proof at all, then you have a big problem. Knowledge that isn't communicated, or analysis that's only half done, can mortally wound any project where the developers don't have the authority to decide the success parameters (time, budget or scope).
Yes, I see your point, of course one the keys for a project is to keep a decision log up to date, so the PM (or anyone within the team) can update it reflecting any technical decision, I'd update this after a team discussion regarding any issue.
+1. I'm talking to you Sharon! I'm tired of getting your loan application details and RNC propaganda delivered to my inbox.
I'm just as annoyed at companies that don't bother with any kind of email confirmation click-through before sharing personal information though. I even frequently get one-click links to edit people's profiles with all their personal details.
If it includes a phone number I send them a polite text and ask them to be more careful when typing in their email address. I figure a little stranger danger fear might help motivate them to stop signing me up to be spammed.
OTOH I'm seriously considering leaving behind my many years old GMail at this point. I really only use it as an identity service for other site's logins 99% of the time. I just don't know what the options are and I don't feel like signing up for something that might not be around next year.
Just looked at the rails documentation for the first time in years. It's drastically improved.
My experience with earlier versions was that you kinda had to piece it together yourself. Learning Play Framework was 10X easier for me since the docs were already there: https://www.playframework.com/documentation/2.5.x/Home
So I think maybe you're just not considering non-Ruby options. Which is totally your prerogative. Just saying it's not my experience. It may be the best Ruby framework. But that's a different argument.
> What I really need when I'm starting a new project and I'm working on a shoestring budget, is speed. I need to build something fast so I can get funded.
Aside from syntax, I don't see any reason anyone would be faster with Rails. It's certainly not my experience. I worked with Ruby for 8 years. I've seen some very talented and very enthusiastic Rails developers. I've never seen one that could build an app faster than even an ASP.NET developer from years ago, and I certainly don't see any advantage over Play, which is generally more stable, much faster, projects generally have fewer dependencies.
The performance advantage of other platforms is underappreciated IMO. The fastest code is no code. If I can do something in Scala through brute that would be impractical to do within the request/response cycle in a Rails Action, that's a development speed advantage. If I never need to consider using some sort of background job service like Resque or message queue because I can just say `Future(someComplexOperation)`, that's a development speed advantage. If I don't need to tune my app or worry about my caching strategies because it's just that fast... You get the point I'm trying to make I'm sure.
Outside of performance, deployment (far simpler with Play), language syntax, and ActiveRecord (I'd just use the simpler, faster Lightbend Slick library) they're basically the same framework. Play doesn't chart much new territory. Sure WebSockets integration with Actors is lightyears ahead. But many won't ever touch it. There's some JSON stuff with validations that's very powerful, but embedding the equivalent of a JSON schema in your Action is verbose beyond trivial examples. I'm not sure how much use it gets.
I found Play much easier to learn than Rails (again, this was years ago) and much more consistent. Given the other advantages, all things being equal (familiar with both Scala and Ruby), it's tough to imagine many developers choosing Rails unless they were worried about externalities like building a team or something.
It'd be interesting to hear the thought process of such developers though if they're out there.
You nailed it. HABTM just never worked, and there was little interest in making it work. Since I handed out commit-access like candy, the majority of contributions were to endlessly refactor. Or do things like letting you treat a CSV file as a database. And HABTM still didn't work.
I didn't know how to put the genie back in the bottle. I didn't have the same problems that prompted me to create DM in the first place anymore (and by that point, I wasn't sure that porting a large Java Pattern to Ruby was even a good idea considering what I'd learned in the process about method dispatch performance in Ruby) and I was burned out on maintenance. So I handed over the keys and the rest is history.
I messed up. :-)
Today I'm happily writing apps with akka-http and think O/R Mappers are a fundamentally flawed idea. It's like trying to build a truck to move a few yards of dirt 100 feet. It'll never pay off. And I think even "users" would probably find that the hours they put into learning and using the tool will never get ahead of the performance, simplicity and linear scaling of effort they'd have had with a simpler solution.
So these days I'm much more likely to write this in Scala:
val limit = 10.0
sql"SELECT name FROM coffees WHERE price < $limit".as[String]
Than anything else. You will never find an O/RM that's faster, simpler or easier to write and maintain than that.
Plus Contextual Validations in the O/RM is just a bad idea. Even if they do appear in the PoEAA. First-class-Form objects and deserialization/validation at the app boundaries may not be a new idea, but it's the right one. (IMO)
Hey Sam, great to see you commenting on this :) I started contributing to DM when Dan was already in charge but I was a DM user when you were still working on it.
Anyhow, you made really good points here. I've worked on ORMs for a couple of years before I concluded the same - NOT WORTH THE EFFORT.
My approach with rom-rb is functional, as in this project works more like persistence libs in functional languages, rather than an O/R mapper. I removed the whole idea of mutable objects and managing their state using UoW etc. This simplified the stack a lot, and despite a complete lack of any performance-related tweaks rom-rb is already faster than ActiveRecord.
I also agree with your opinion re validations. I removed this concept from rom-rb as well and built a standalone validation library instead. This works very well.
That sounds like the pain I went through when I tried to write my own ORM. You want to go nuts with refactoring, chasing an ideal design that just doesn't exist.
> So these days I'm much more likely to write this in Scala:
I do this sort of thing a lot in ActiveRecord. I'll write a class method with ".where('price is null or price < ?', argument)". I use ActiveRecord a lot like I use Sequel, drilling into the underlying database layer. It occasionally bites me, but when it does, it's a good reminder to simplify my database architecture while nothing else is relying on it.
This way I can get the benefits of an object that behaves the way I want it to behave, but also respects the data layer. I don't want to give up either.
I do feel like Rails, in an effort to make things easy, encourages devs to overcomplicate their apps.
That's just my layman's perspective, but take a look and see if you don't agree. The front readily collapses, but just past the center-point of the wheels (presumably about where the motor area starts) it's a brick wall and the whole 2+ ton vehicle just stops in it's tracks.
Compare that to Volvo crash tests, especially the Euro NCAP Small Offset. The front fender of the Volvo disintegrates, but then the wheel actually flys off and the front of the cabin even appears to absorb some energy. It looks like a much softer landing. The interior shots are even more impressive with less deformation and a lot more padding with a lot less slack in the airbags.
Taking a look at the XC90, it's probably no surprise then that it achieves significantly higher ratings, despite having a 4-cylinder ICE in the engine bay. (see http://www.euroncap.com/en/results/volvo/xc90/20976 and http://www.euroncap.com/en/results/tesla/model-s/7897)
I didn't run across any Model S tests where it looked like that long hood was actually doing much for it since it appears to hit some sort of impenetrably stiff wall halfway through. You can look at the crash test video during a Musk demonstration and see the same thing. There's some sort of structural member there in front of the motor that just doesn't seem to give way.
BTW, it actually appears the Honda Accord mentioned is slightly safer (except for pedestrians) despite the tested model being 5 years older.
The Model S is no doubt a very safe vehicle overall. But it's not the second coming, and Musk's talk of crumple zones appears to be more Marketing than Truth (and the ratings bear that out).
That "Tesla Model S breaks roof test" for example? Not the strongest. Not even at the time of testing. Here's the current generation XC90's results for example: http://www.iihs.org/iihs/ratings/vehicle/v/volvo/xc90-4-door.... Over 10 tons. The previous generation was off about a ton. As far as I can figure out both figures are greater than the Model S's despite the fan-faire.