I wonder just how long this discussion is going to go on. To me looking at who has jobs in tech broken down by gender is flawed from the beginning.
The more interesting sociological question is whether there is a nurture thing happening here, or just a natural tendency for women to not be as interested in computers and technology at a young age.
Boxing and MMX have way more men than women - why isn't there a "we can do better" campaign for these disciplines?
By the way my co-founder CEO is a woman and she's an amazing technologist and leader.
To turn this the other direction, here's some perspective from a startup exec. This job requires constant compromise between doing what's right for the business, the investors, and the employees of the company. In my management experience I've found that I've always worked FOR my people, not the other way around. My days are full of battling it out with the CEO over a pay raise I know a good engineer deserves, or figuring out a way to provide additional stock option bonuses when more cash just isn't feasible. The majority of my time, however, is spent as keeper of the peace. People are tricky and all very different. Some have thick skins, others don't. I spend countless hours being a therapist and making sure everyone is able to work as close to peak performance as possible without killing each other. This involves a ton of moving parts.
In my last gig I managed five directors who all had their own teams under them. The juggling to make sure these folks were well taken care of and their teams were happy overall is tough. Things do fall through the cracks. A developer might have a big problem with a product manager. I might not hear about it until the developer has put in notice because my engineering director thought he/she could take care of it without me. That engineer more often than not probably thinks "hey, the CTO is ignorant and has no idea what's going on." I accept that as part of the job and understand I'll never have 100% view into everything that’s happening. I accepted a long time ago that in some cases a member of my team might believe me to be incompetent. Comes with the territory.
On top of those duties, the overall company strategy and operational plan needs oversight and contributions from the executive management team. The amount of time spent talking about ideas and direction is enormous. By the time a pivot or major change has been decided on it’s generally been under discussion for several weeks, sometimes even months. The inputs and process for arriving at these decisions are a complex mix of research, customer conversations, cogs analysis, competitive analysis, M&A discussions, go to market strategy, pricing, technical feasibility, margin, etc. When the decision is finally ready to be communicated to the troops it can often cause confusion and the belief that “these guys don’t know what they are doing.” While that may be true in some cases, I’ve never been involved in one of these types of decisions that didn't have a lot of well thought-out reasons behind it.
This is only the first step. The way the best leaders separate themselves in this situation is their ability to communicate decisions and make everyone BELIEVE it is the right thing to do. In startups there’s never a 100% clearly correct answer. Faith comes in more often than I’d like to admit, and getting everyone to drink the Kool-aid is pretty damned important in terms of morale. The rightness or wrongness in the decision won’t often be known until a year or more passes. If the decision causes the company to be successful the execs are looked at geniuses. If it fails they are incompetent idiots. Many of the factors that determine the outcome are out of the control of the executives. I guess that’s life.
My advice is always this: be self-aware about what you want. If you have a passion for a product or space and enjoy your work, try not to let the factors out of your control dictate your job satisfaction. If you are unhappy with decisions being made or company direction, put yourself in a position to have influence. It’s easier than you might think.
Not particularly. Anything really secret I probably wouldn't put on that computer. I just don't see why other people should be allowed to access my data.
The biggest win, I think is the internal "e drive" encryption, so that a RAM dump doesn't spill keys. That even somewhat mitigates Lightning DMA attacks. (Although the attacker could just hijack the OS at that point.)
Which ecosystems? And if you work in those as well then why are you bothering with an ecosystem that has "several orders of magnitude more crap"?
.01% is a small number - so you have 3,000-4,000 problems with the CLR and .NET framework.
Sorry to translate literally, but this kind of gross exaggeration and lack of data is what creates the "Microsoft sucks!!" attitude that is based on a 10-year old reality (at best).
Hmmm... I guess since you don't use a public profile pic or take selfies this is a bad product idea. Or maybe, just maybe most people don't really care.
Maybe your point was that you won't use this particular product? Are you the person who also posts negative reviews on Yelp for restaurants you've never been to because you don't like that style of food?
Not true. I want still want the IDE compile, type check, and add type-safe completions (When using statically typed languages). I want the IDE to assist me in writing the code. I want my IDE to launch/attach to processes for debugging. Generally, I want the IDE to produce binaries yes, but mostly for my own consumption.
I want to be able to access the compiler external from the IDE so I can automate builds/deployments easily.
Now I want both types of builds to happen in as close to the same manner as possible so they're consistent, but both are important.
Ironic language given that most "engineers" today can't write code without dependency on built in garbage collectors.
Do you really think developers these days are just as good at optimizing for limited system resources as they were in 1986?
"We still run into..."
Who? Maybe you - but most developers aren't running into map/reduce problems every day. And when they do, they certainly aren't coding a solution from scratch.
I think what really happens is that programmer/software engineer profession have become a lot more accessible to the mass. Back in billg days when he started programming, I would bet less than 1000 kids around the country had access to a computer. In 1986, the total number of programmers would've surely been less than 10,000 and most of them worked for MS, IBM, DEC, etc. In the current time, half of SF are software engineers and entrepreneurs :) I guess my point is there are still a lot of people who work on the hard core stuff like Linux/Windows kernels where every byte counts, or JVM/LLVM where data structures/algorithms are rewritten over and over to get a bit more performance. I would say the number of programmers who have to care about the optimizing system resources may be even more than back then, it's just that there are a lot more application developers these days.
I guess my original post was focused on map/reduce problems; I meant it to be more general. We take our site response time very seriously, and therefore our application code and data layer has to be very fast.
Yes boxes are faster and easier to spin up. The 'downside' to that is that many website on the internet are blazingly fast: Google, Amazon, Dropbox, etc. Because they are so fast (or perceptibly fast via tricks), the rest of the web is held to that higher standard. Twenty years ago, things taking a long time on a computer screen with no updates was acceptable. Today it really isn't because there are N other websites that are selling your exact product or experience.
Maybe these days other metrics are more important to optimize for? Ultimately it is about transforming money (resources) into output (more resources) and depending on times different things bottle-neck you there.