Ask HN: What does an electrical engineer actually do at work? - <AUTHOR> What's your daily work like? Do you spend all day at the keyboard working with CAD and sim tools, or do you work with actual hardware, too?<p>The reason I'm asking is that I'm a pure software engineer, and I sometimes wonder if I'd have been happier on the hardware side. But I've gotten some reports that these days the work isn't actually all that different. <comment><USER2> This year, I left my electrical engineering (EE) studies for software engineering. I had a lot of personal experience with coding before going in EE and I wondered if some hardware would make my life more interesting.

After 1.25 years, I realized that I was spending all my life in a lab with no windows, to the smell of toxic soldering fumes, fighting against extremely annoying software (altium & other proprietary overpriced pieces of technical debt). Also, I realized whatever I created needed a lot of work for an unsatisfying outcome (A sound amplifier is less satisfying than some webgl stuff that moves [but it requires a lot more work]). The nice feeling of being powerful when writing software & the instant compiler/interpreter feedback is what I missed the most.

At least, when you are a software engineer, you have more odds of finding a nice workplace, with windows and software you can choose.

The part I miss from electrical engineering is the physics part (But we were only skimming this part anyway).

Finally, circuits are a thousand times less satisfying to me than code. I've seen people for whom it was the opposite. They did not get programming at all, but they were designing circuits at the speed of light with an intuition that I did not have.

<comment> fake-name If you think Altium is a "overpriced piece of technical debt", HOLY SHIT you should try anything it competes with. It's sooo much nicer then anything else out there in the EDA market. At my work they use Proteus, and it's horrible.

Also, solder fumes aren't toxic!

<comment><USER3> If you think Altium is bad, you've never used Orcad.

If you think Orcad is good, you've never used Eagle.

<comment><USER4> If you think eagle is good, you've never used KiCad.

<comment><USER3> I'd love a recommendation for a good KiCad intro tutorial. I tried to just hack through learning it once and I couldn't pick it up. Any suggestions?

<comment><USER5> I used a YouTube playlist[0] to get the basics down, goes from installing KiCad through to soldering a finished board.

[0][https://www.youtube.com/playlist?list=PLy2022BX6Eso532xqrUxD...](https://www.youtube.com/playlist?list=PLy2022BX6Eso532xqrUxDT1u2p4VVsg-q)

<comment><USER3> Thank you! I'll check this out!

Edit: ...is that Chris Gammell? How did I not know this was a thing he made?

<comment><USER6> He became something of a huge KiCad evangelist there a while back. I've heard that this list and Contextual Electronics are pretty good. I think he still works for parts.io too.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER7> I have been working for about 20 years. At the beginning of my career I had a choice of being in the ASIC side or board design and chose for board design because I thought (rightfully so, I learned later), that that was a more "physical" task. So I worked for about 10 years in board design and my typical work day was not typical at all. Some of the time researching parts. Some making schematics of circuits. Some making PCB layout. Some on debug and integration. Some time mastering scope and logic analyzer use. Some time talking my way thru all the people I have to receive products from/deliver to: SW engineers, FPGA engineers, mechanical engineers...

I made analog designs, digital designs, power supply designs... Then I started feeling more and more that I designed less and spent more time learning what the chip designers did, as chips incorporated more and more functions that once I did by myself.

So at the end I switched to FPGA design and today my typical workday is coding, debugging, simulating... 95% of the time on my computer. A good friend of mine coined a good phrase: FPGA engineers are SW engineers that disguise themselves as HW engineers. A good joke. But every joke has a bit of truth in it.

<comment><USER8> It seems like board design is a much less monotonous and more practical task that you seemed to enjoy. What made you change to FPGA? Do you feel that the bulk of what used to be board design is now happening inside silicon?

I started my career as a software developer, but got bored by web development that seems to make up 90% of the industry, so I started to study EE because I really enjoy playing prototyping fun projects. I just ordered a PCB for one of my projects.

But when I read your, and other comments, it seems that just as the things I enjoy about programming are not what a typical job is about, the things I enjoy about EE are not what typical EE jobs are about. I'm not sure where that leaves me...

<comment><USER7> Yeps, as I said, I felt that I was doing less design and more system integration or "lego building". Besides, I had been doing that for many years and I thought a change was due. From my description it may seem that FPGA is monotonous... that was not my intention at all. For me, FPGA design is much more challenging and fun than board design never was. The downside of FPGA design is that human contact is much more limited.

You cannot really receive answers for your questions, because most of these things are subjective. You have to make your own way and make your own experience. Experience, after all, is the comb you get when you have no more hair ^^

</comment></comment></comment><comment><USER9> There's a lot of overlap between the two, or there can be; there is as much variation in what one does in EE as you can imagine, from supervising operations to semiconductor design, etc.

A design engineer tends to have a batch-oriented life. Typical workflow might be like CAD -> sim -> layout -> debug -> small scale production -> testing -> handoff to production. Of course all of this is as a member of a larger team. Somewhere in there you'll either work on software or firmware or both. I spend about half my time in the lab or field, the rest in my office or meetings.

One bad side of EE is that you can break stuff much differently from software. When the magic smoke comes out, there's no 'svn revert' \- you have to figure out what you broke and fix it before you can move on. This always happens when you're in a rush and causes plenty of unplanned late nights. And for additional fun, it's not uncommon for problems to crop up where you just have no way to get at the underlying issue. Datasheets don't have all the info you need, and you can't always figure it out. Sometimes you hit a wall and just have to start over. I used an Atmel processor which had a weird bug in its I2C slave module which prevented it from working properly. Best solution ended up being to go to a different processor, which was incredibly painful.

It's really awesome to be able to hold on to a thing that you built and make it go. Seeing your thing go out in the field and work is very rewarding.

</comment><comment><USER3> I'm an electrical engineer by trade, and do embedded systems design for a living. I do a lot of board placement and layout planning, plus writing test plans for verifying that what we build is good at scale. I also do a reasonable amount of debug, as that just comes with the territory. I'd say it's about 70% software time for planning and CAD work, 30% hands-on lab time. Note that it's not uniform - I might be in the lab for two months straight, then not go in for six.

Generally, "embedded systems" implies some programming as well, but I do little to none of that. I think I'm the exception rather than the rule in that sense.

If you wanna get simplistic about it, I spend half my time playing "connect the dots" in overpriced software, and the other half arguing with people about where I decided to put the lines.

On the one hand, there's a lot more standardization in the components I string together to make a working system. On the other hand, it can be just as hard to track down the source of a problem. You happen to have caught me at a point where I'm stuck trying to figure out the proper answer to a mysterious boot issue, and let me tell you what - it's about as frustrating as frustrating gets. You have to push yourself to think hard about what you haven't done, even when you've done everything by the book. ("The book" in this context is documentation, design guides, processor reference manuals - things that tell you what to do to get your system working.)

Point I'm trying to illustrate - don't think that hardware is any easier than software. It's very, very gratifying to see something real, that you can hold in your hands, work. Doubly so when people actually use your stuff and tell you how much they love it. (Yay, consumer electronics!)

<comment><USER10> > embedded systems

> there's a lot more standardization in the components I string together

Embedded Systems is just one discipline in EE. How many people design something like an lm317 deployed on embedded devices? EE tries to teach that, too, until it's all to complex not to specialize on one branch. Another discipline I was offered to specialize in was Motor Appliances and Power Amplifiers. Those don't have much to do with CS, except maybe for digital control circuits.

<comment><USER3> When I said "a lot more standardization", I had things like DRAM or PCIe in mind, which are spec'd by their relevant consortiums (JEDEC and PCI-SIG, respectively). As in, there's clear limits on the way to make it work, and if you meet those limits, it's fine.

I do a lot of POL planning for purposes of thermal management, so yeah. I'm definitely not that specialized.

<comment><USER10> > DRAM or PCIe

Well, that's also a better example for my point. the sppeds they achieve require some research

<comment><USER3> Maybe for a flyby topology, but I mostly work with point-to-point topologies. That's basically an exercise in good impedance control.

</comment></comment></comment></comment></comment><comment><USER11> I've lived two careers -- one in semiconductors doing ASIC physical design (highly aided by writing software I might add), and another in startups doing backend database, systems, the gamut of server-side programming.

The hardware job seemed more like "real" engineering -- it was more rigorous, there was less room for error or experimenting. But, I got bored with it eventually -- it was the same thing, just a bigger chip, more people working on it, and a longer design cycle from one thing to the next. Also, it seemed like upward mobility was hard -- I didn't want to be a middle manager anyway, and it felt hard to have a large influence in a company with thousands of engineers. In the end, I felt I didn't want to die at that desk, so I switched into working for internet startups.

The software end of things has felt more creative and has definitely been more fun. It's more laid-back, people are generally a little more interesting and well-rounded, and you typically work at a place 2-4 years and then move onto something new -- which I like. You're generally working in smaller teams and you get to work on a variety of different pieces of the system if that's what you like to do.

All in all, they were both rewarding experiences with good compensation -- the software thing might end up being more lucrative in the end and I just sorta have more fun doing it. At the time I made the switch, I took a pretty large pay cut going from a mid-level hardware engineer to a junior software engineer, but it's one of the best decisions I ever made looking back.

</comment><comment><USER12> Typical day as an Electrical engineer at a autonomous vehicles company.

\- Work on Schematics and layout for various different boards (usually only get time for one each day). \- Go to meetings with multiple different engineering teams to make sure that cross-functional requirements are being met (usually the software and mechanical guys making demands of what they need which just means what they want to make their life easier by making the EE's suffer). \- troubleshoot issues on the already built hardware and add the fixes to upcoming revisions. \- Argue with purchasing department about the reason I need to get a certain type of testing equipment.

-A lot of component research and validation and meetings with vendors to determine if that components is right one.

and this is just the pure hardware tasks. There is always potential to have to deal with firmware issues as well.

I may spent half my day at my desk, at least an hour or two in a lab and the rest is for meetings.

<comment><USER3> God, meetings. So many meetings. Why? Why?!

<comment><USER13> A significant fraction of designing any complex system consists of getting the people who design different parts to agree on the interface between those parts.

<comment><USER3> That was a very high minded response to an attempt at commiserating.

<comment><USER13> Yeah. Sorry...

I do think, though, that it's possible for an organization to structure it's meetings so that they're a useful and productive part of the job, and not a thing to be dreaded in the least.

I've seen this done with varying degrees of success/failure.

<comment><USER3> I think a real problem is that meetings bloat in attendance, and that the amount of useful stuff you can get done is inversely proportional of the number of attendees. I think this is doubly true when you don't have good, clear leadership and agendas. This doesn't happen that often in my experience.

I feel like I go to a lot of meetings with a lot of people who are just there to be "in the loop" rather than actually contributing to the topic at hand.

</comment></comment></comment></comment></comment></comment><comment><USER14> I was a RF engineer two years ago, and now I am doing software development. I think I kind of resonate with many of the above comments. While I was doing RF design, I spend a lot of time on CAD tools(I agree many of them are overpriced), after I got my design from the fabs or manufactures, I spend most of my time on lab to validate/optimize my designs, due to that fact that some unforeseeable fab/manufacture processes variation that are not captured by the CAD tools. thing I feel very gratifying was if you utilize the right framework/methods that are reason upon physics, the performance of the design most likely will mach to what you predicted, and that allow you to design something reach/surpass some industry benchmarks

</comment><comment><USER15> There are a bunch of EEs in here complaining about the software they have to use. I took a few EE courses in school and the only thing I remember is having to use horrible software.

Why hasn't someone made good software for EEs to use? And if the have, why do no EEs use it?

<comment><USER16> There is lots of good software for EE, it just costs $$.

<comment><USER17> I worked on maintaining this software quite a few years back. It was quite innovative when first released. [http://solutionselectricalsoftware.com/](http://solutionselectricalsoftware.com/)

</comment></comment></comment><comment><USER18> I do FPGAs and hardware design. The FPGA part of my work is more like software I guess; bug fixes, feature enhancements, maintenance, etc. Hardware design comes in waves depending on how complex the design is and how the requirements change. When it's "design season" I spend most of my time in schematic and PCB layout, then wait for hardware to come back, then do bringup. I also get to dabble a bit in RF/microwave and DSP.

But as others have said, EE jobs run the gamut. Depending on where you go to school and what emphasis you choose, you could be doing digital IC design (which contains multitudes within itself, e.g. high-level architecture, clock trees, verification, integration), analog IC design, RFIC design, board-level RF, chip package design, embedded systems, power electronics, antennas, FPGA, HDL/IP cores, test engineering, digital signal processing, control theory, communications systems -- the list goes on and on.

</comment><comment><USER19> Like software engineers, there are many different jobs for electrical engineers. Some are more design and simulation, some are testbench, some are more theory and down to the physics level. Others are support and sales. Larger companies might have more defined roles, whereas others do a bit of each.

<comment><USER20> I am an embedded software engineer at a company that does handheld electronics, and agree that both jobs are along spectrums. I spend a lot of time with the hardware engineers, and we all spend time testing things on our benches with signal generators and oscilloscopes as well as using computer tools to develop (software in my case and hardware in theirs).

If you want to work with some hardware, or on a test bench with lab equipment, you can always move over to embedded, as there are many jobs available; some even say it's less competitive.

<comment><USER21> > If you want to work with some hardware, or on a test bench with lab > equipment, you can always move over to embedded, as there are many jobs > available; some even say it's less competitive.

My experience has been that the embedded jobs are controlled by companies that are _very_ picky about experience. I am an EE that has been out of the game (professionally) for four years. It's like pulling teeth to get anybody outside the Valley to talk to me about an embedded job.

</comment></comment></comment><comment><USER22> This video is an amazing time lapse of the creation of a Eurorack synth module. It shows you what you'll spend a lot of time doing in a smaller org (smaller, as in, you do everything...). [https://www.youtube.com/watch?v=1pawXfoTg1k](https://www.youtube.com/watch?v=1pawXfoTg1k)

<comment><USER23> Wow that was mesmerizing. I'm surprised that all of the traces were drawn manually. I had always assumed that modern design software would do all of that tedious stuff for you.

The creator of that video was answering questions on reddit _, and amazingly the whole design and build process took less than a week.

_ [https://www.reddit.com/r/ArtisanVideos/comments/50tqgx/the_d...](https://www.reddit.com/r/ArtisanVideos/comments/50tqgx/the_design_and_build_process_of_a_synthesizer/)

</comment></comment><comment><USER24> Somewhat related to the topic, but as time passes, electrical engineering becomes more and more about choosing which software remedy to apply to what once were pure hardware solutions.

And when that is not the case, when hardware is going to be built, the decisions about circuitry and methods are increasingly determined in advance with software.

Here's an example -- in my career as an electrical engineer (30 years ago) I designed any number of phase locked loops in circuitry. Now I design them with a keyboard and a computer monitor, [using methods like this]([http://arachnoid.com/phase_locked_loop/](http://arachnoid.com/phase_locked_loop/)). The new PLLs work much, much better than the hardware-based ones, as well as requiring far less guesswork and effort.

So my advice is not to abandon a software-based approach, it increases your employability compared to someone who only knows hardware.

</comment><comment><USER25> I'm just a beginner. I write in hardware description languages for test benches, simulations, checkers and constrained random tests. I've also done PCB layout (hobbyist to RF microstrip), GUI programming (I don't enjoy that), and using IC design software for.simulation and layout. I also spend a lot of time working with hardware. The debugging process is very challenging, and certain aspects of it can be tedious. Overall I find it to be satisfying, challging work. I also get to apply my Linux knowledge most of the time when working on things, which is great.

</comment><comment><USER26> TL;DR; I'm an impoverished small scale serial arsonist of expensive components remembering that software means never having to leave physical proof of your boo boos, most of the time. OK, I'm actually a software engineer back into hardware engineering after 20 some years cause I need to build custom cameras for machine vision projects. Major recovered sills are CAD (Eagle), more geometry (layout), exercising credit cards due to I'm still bad a spice, lazily using standard cap and resistor values even when they're wrong for >this< circuit, and excessive shining about stray capacitance - since I need to work at 3.3V and I'm in my 50's, I can't see the parts so well and my motor skills aren't what they once were, so thats even more expensive crap I need (rework station, reflow oven)

<comment><USER27> Having just deployed a machine vision system (using GigE machine vision cameras): why exactly are you building custom cameras? If you don't mind/are allowed to share this information, of course.

<comment><USER26> I do hardware engineering because I started my career when it and heavy math were required to get into software courses (and you first computer came as a bag of parts) - the camera itself is spherical build, wedging 26 cameras, 4 beagleboneblacks, a netswitch,IMUs,GPS, and batteries for the souls sucking multiamp drain into a 5" ball (OK, I gave up on the batteries for the moment :-) My primary "actual engineering" has been the control distribution circuits across 8 paired I2C/SPI busses at 4-8MHz and trying not to corrupt the bits in the process (a little bit of whining on Wolfram Alpha with the theoreticals, a lot of being very neat and tidy with the layout - the power distro itself with its various internal taps because power is analog and analog is proof that God hates us, the various passives and actives involved in everybody actually powering up in some more or less controlled fashion, etc - technically for the camera I use the Arducam FPGA against OV2640's and OV5640s, cause that gives me a nice (slower) pure I2C/SPI interface - the real goal is to feed the tensorflow stuff in the cloud, the camera geometry, imu, and gps provide enough correlations for the system to lock onto pretty easily, i.e. stationary spherical image reconstruction and spatial analysis is a no brainer (relatively speaking :-) ), and the back end system is now getting more betterer at using the IMU data stream as a primary assist when the camera is in motion (oh, and then there was the pesky little issue of delivering the GPS clock to 4 linux based computers to establish a common timebase cause we all know that linux is an awesome RTOS)

</comment></comment></comment><comment><USER28> I'm a SW guy .. been mulling getting a job in hw at some point. I watch a lot of YouTube and do hw projects in my spare time. Is there something like sw boot camps for developing hw skills? I'm almost considering getting an ee bachelors or masters as a part time student.

<comment> fake-name Not really, because hardware is not amenable to boot-camp style things.

Basically, hardware is way /way/ harder then software. Imagine software where each compile took multiple weeks, and cost lots of money (hundreds of dollars for the simplest of projects, to tens or even hundreds of thousands for really complex things). Changing the layout or design almost always involves a complete board respin.

There is no easy getting started (maybe arduino stuff, but there is SO MUCH horrible misinformation in the arduino communities), because the minimum functional system is a complete system. You basically have to get _everything_ right _the first time_ in hardware, or it won't work. The learning curve is more of a learning wall.

<comment><USER29> Can you specify what SO MUCH HORROR amounts to in the arduino community?

From reviewing these posts, it seems like EE spend most of their day frustrated trying to get the device to simply boot or do the simple thing. If there's a tool for beginners that snaps together and avoids these headaches, that seems valuable in itself, almost anti-HORROR.

<comment> fake-name My issue with the arduino community basically comes down to:

1\. The HORRIBLE code quality in the entire arduino codebase.

2\. The prevalence of straight up factual errors everywhere in their stuff.

3\. Their shitty, SHITTY schematics.

To be clear, getting a AVR to run a "flash the LED" program _is_ trivial. There is really not much /to/ an arduino (it's an overglorified atmel eval board).

When you refer to `trying to get the device to simply boot or do the simple thing`, what you're normally talking about is trying to get a fully integrated complicated system to power up and function to the point that it can then be debugged further. This is a COMPLETELY different ball-of-wax, and requires a much more broad toolset, because you have to be able to diagnose _why_ it's not working. Sure, with arduino things, you can plug the bits together, and it'll _MAYBE_ work (assuming non-buggy libraries, which is very much not usually true). OTOH, if it doesn't work, ¯\\_(ツ)_/¯. You're going to need a logic analyser, or an oscilloscope (or both!) to figure out why. I can pretty much guarantee the person who initially wrote the library for each of your "snap together" module components _did_ have to go though all that.

Basically, arduino stuff is the PHP-equivalent of the hardware world. The general quality is low, there is little push for improvement, and everyone is sticking buggy crap on the internet.

For example, the "Arduino Mega" (call it a goddamn ATmega2560, dammit) has multiple hardware serial ports (4 of them). For a long time (possibly until today), even if you weren't using the ports, it allocated two 64 or 32 byte buffers for each port statically. This is on a platform with 8KB of RAM total.

Would it be trivial to fix this? Yep. Did they? Not the last time I checked.

These are also the same people who decided malloc() on a platform with 2 KB of ram was a good idea (it's not).

<comment><USER29> Thanks for the reply, I'm just seeing this. I'd agree with you that anyone who knows what they're doing and is looking to deliver a professional product will find the Arduino, it's price, it's libraries, unsuitable.

Think of it like physics problem sets though. You don't get to Physics 503 by just reading the first three text books, you have to actually do the problem sets and struggle with them. In our first problem here, assume there is no friction, even though any experimental physicists will tell you that's crazy, that never happens. Once you've mastered the exercises, then you criticize their clunkiness and move into a framework with more realistic assumptions.

And for me, the refusal to fix sub-optimal design is pretty appreciated as it doesn't subtly break some aspect of already written books, tutorials, shields, etc. Beginners will often look to copy very literally an already known solution, which may be on someone's blog from 2011. Little changes, which happen often with RasPi, result in hundreds of comments like 'This doesn't work, please help!'

</comment></comment></comment></comment></comment><comment><USER30> I've served a whole bunch of roles in my five years at my current employer, and I'd probably classify myself as being an "electrical engineer" for all of them. (No single experience is typical, but mine is probably representative of a lot of chip companies.)

When I joined the company, the very first role I was put in was on the core bringup team for a complex ASIC -- that is to say, the team responsible for screening chips, and working on issues that affect all of the individual functional blocks. I joined about a month or two before silicon was to come back. So, I spent the first six or eight months or so at the company in the lab; the first month was spent familiarizing myself with the tools and boards that we'd be using, and then once silicon came back, I spent a bunch of long nights and weekends in the lab getting chips to various teams, and, in general, solving whatever system-wide problems showed up. Bringup was a lot of work but it was also a really good view into "how the sausage was made", so to speak.

After bringup, I moved to an IP team [1], where my title was "ASIC Engineer". At the phase in the project that we were in, most of the RTL [2] had already been written, and owners for each sub-block had already been assigned. So my job was to do a bunch of the "checklist" items for netlist quality. For instance, I spent a while reviewing test coverage, and waiving coverage for things that couldn't possibly ever be reached. Or I reviewed tool output that did "clock domain crossing verification" \-- basically, the tool pattern- matched on various chunks of code to make sure that they were safe. And yes, I spent some time staring at waveforms, trying to debug our testbench, or any kinds of such things.

I spent a while on another couple bringups, which I volunteered for this time. I enjoyed them, and then gave myself some time off for each to compensate myself for my nights and weekends.

At some point, someone decided that I was a better architect than engineer, which is probably for the better, because I was very slow at checklist items. So at some point I switched to an architect role, which meant that I was responsible for doing the definitions of sub-units, rather than implementing the hardware for them or implementing the testbenches for them. And, in general, the whole specification process is part of the architecture team's job. So, one day, when there was an output quality problem with our block -- it worked as specified, but given that it did some image processing, the image quality had some defect, so the specification was wrong -- I was tasked with spending a few weeks to reproduce it on hardware, find register settings that made it better or worse, and finally, understand what the defect was in the specification, and how to avoid it in the future.

Another task I had as an architect was to do the definition for a sub-unit from the ground up. This was a year or two of work. My primary output, interestingly, was not code, but instead a 100-or-so page Word document that specified how the block was to work, and what registers should program it; the consumers of that document would be the hardware team that implemented it, and the software team that would build the software. And, subsequently, I was tasked with implementing a model of that block in C, which could be checked against the RTL that the design team wrote. Near the end of that project, I wrote validation tests for it, and yes, I then spent some time staring at waveforms helping the design team to understand why their RTL implementation diverged from my C model. (They were, often, right. I am very lucky to work with an extremely skilled RTL team.)

These days, I'm doing more algorithmic research, trying to figure out what should be next for the block that I'm working on. In parallel, I sometimes get on phone calls with, for instance, image sensor vendors, understanding on an electrical level what's going on inside of their next sensors, and how they will be transmitting data back to our processor. So even though I work in the digital domain a lot of the time, having a firm grounding in 'is it possible to wire this to this' has gone a long way to help out, and being handy with a soldering iron has made my life a lot better on more than one occasion.

My experience spans some gamut, but not all of it. I don't work on place-and- route, and I don't work on board design (at work, at least). There are a lot of things that electrical engineers do :-)

Hope this helps. (I can answer questions, I suppose, if you like.)

[1] For some reason, the semiconductor industry calls functional blocks IPs -- yes, as in 'intellectual property'. This particular IP was not something that we licensed to anyone, or that we licensed from anyone; the only 'customer' of this IP was our own chip team.

[2] Again, another acronym whose expansion ("Register Transfer Level") is not super descriptive. Essentially, source code. Usually in Verilog, or an even higher level language. EEs seem to love Perl and Tcl, so most places I've worked have had Perl or Tcl preprocessors before their Verilog. Ugh.

<comment> fake-name No VHDL? ( :) ) Also, TCL - WHRYYYY..

ASIC work is fascinating.

<comment><USER31> Because TCL was one of the first great scripting languages, so we glommed onto it and it got used everywhere. You would be surprised (and then maybe appalled) at the number of times TCL appears in a tool chain like that.

<comment> fake-name I know. That was intended as more just "ugh, more TCL", then "why more TCL?"

</comment></comment></comment></comment><comment><USER32> I do a lot of drawing and sometimes I build panels for prototype machines, but mostly I spec out components, talk to vendors, and do paperwork. FWIW, I work at a small company that makes industrial meat processing and packaging equipment.

</comment><comment><USER33> There's a lot in EE that's nothing to do with hardware per se. Like digital communications and signal processing.

EEs also study computer architecture and OS internals in detail, depending on one's emphasis.

</comment><comment><USER16> Been doing RF/Microwave/Antenna design for 20 years. Fortunately I have stayed hands-on with hardware development. Start with simulation, then PCB layout, followed by lots of measurements in the lab. Sometimes meetings for customer requirements, writing technical parts of proposals, getting capital equipment purchased, etc.

<comment><USER34> Hey what's with that 'path loss' equation? Looks sketchy to me.

<comment><USER16> I'd say it is sketchy as people say path loss increases with frequency; well it doesn't if you have the same physical antenna apertures (think parabolic dish). Though the formula is called a loss since it's used that way from a circuit perspective, and you treat the antenna gains as not related to aperture, so loss does then increase with frequency.

<comment><USER34> Yes that frequency term is precisely the sketchy bit. Because of that the equation doesn't conserve energy which is normally considered a bad sign.

On the other hand to do it properly you have throw out the 'reciprocity' of sending and receiving antennas. They are not really the same at all.

</comment></comment></comment></comment><comment><USER35> How are your troubleshooting skills?

I'd say my EEs spend 50% in design and 50% in debugging customer problems when a board fails in manufacturing or fails in the field.

The answers can be easy (say, a resistor is out of tolerance or the wrong oscillator was placed on the board), or they can be really tough (a transient is killing a FET and locking things up).

</comment><comment><AUTHOR> Is it math-heavy in practice?

Software engineers usually have to take quite a few courses in calculus, linear algebra, and stats. But that stuff very rarely comes up in practice, at least in most subfields.

<comment><USER6> If you're doing signals stuff, it can get mathy (differential equations or Fourier analysis type stuff).

</comment></comment><comment><USER36> I am a board level design engineer and the work is similar in many ways to software. It is very numerical and requires attention to detail.

I spend 25% of the time talking about requirements to other engineers, 50% comparing components to use with datasheets, 12% in Altium Designer and 12% buying components and PCBs.

Huge pain #1: the unbelievably slow process of manufacturing PCBs. Imagine that you were back in the old days of computing where you had to use punch cards with machine code and you had to give your stack of punch cards (your "program") to the punch card operator. He would run it overnight and you would get your results the next day. If your program failed, then you have to meticulously comb through it and debug in your head. This is modern-day PCBs. Holes in a board that take forever to make. Then you have to pay $80 shipping to get them next day or you can pay your engineers to sit around doing nothing. And the PCB might not even work. Learning feedback loop is very slow.

If you want to do anything remotely interesting like via-in-pad or four-layer boards, first you have to wait at least 24 hours for a custom quote. Half of PCB vendors don't just give you the formula to make your own quote. Then you have to pay either $1000 and 2 days or $200 and 2 weeks to have 5 copies of your design.

Huge pain #2: reinventing the wheel. When I open a datasheet, I have to read about the device. The pins, the maximum ratings, the application note "gotchas" like "don't leave this pin floating or else the chip will be unpredictable!" Then I have to make the schematic symbol and footprint by hand. That means manually entering IPC package dimensions into Altium like a braindead zombie. Every package is slightly different. I cannot tell you how many Texas Instruments DC-DC converters I have hooked up. I have no idea why device manufacturers don't just hire someone full-time to make open-source 2D and 3D footprints for the top six CAD tools. SnapEDA and Altium Vault are trying to do this, but the footprints are flawed and they are outright missing a lot of parts. I cannot tolerate mistakes when each board costs hundreds of dollars. The device manufacturers already make footprints to test their parts. Why don't they share them??

Huge pain #3: High barrier to entry. Very expensive software. In software engineering, professional tools like git, Visual Studio, Eclipse are all free. You can pull code at home from Git and start contributing immediately. The only barrier to entry is the time you need to understand the existing codebase. Even in firmware you can download Code Composer Studio or PSoC Creator for free.

In board design, you need to pay $300 for EAGLE or $5000+500/year for Altium if you're serious. Sometimes OrCAD goes on sale for $300. Lets say you want to simulate Bitcoin mining ICs frying themselves in their own heat. Or maybe you want to know the radiation pattern of your antenna. You can pay another four digit price tag for simulation software like CST or just copy a previous design like a zombie. Upverter is trying to solve the upfront cost problem with their $125/month SaaS subscription pricing, but I tried their editor 3 months ago and it was 15 FPS with the example board. Not cool. KiCAD is an open source alternative to Altium but as far as I know it is nowhere near comparable.

Huge pain #4: ordering components and PCBs. In my last project I had to order components from China. Ordering from China is not very easy with the language barrier, bad spec sheets, time difference. Alibaba is the place to go for ordering from China, but all the prices are "Contact us", which means you have to give all your information blah blah blah until you get an email with the price and then pay with wire transfer. Sometimes you get lucky and you can find what you want on AliExpress and pay with credit card.

But the tradeoff to all of this is that if I do it correctly, I can hold something in my hand and give the software engineers a new API to play with. The APIs all stem from the hardware. The work is often more fundamental with equations and physics rather than purposeless corner cases I had to consider when I was in programming. And hardware often has the chance to be featured on the box of a product rather than software which is all just assumed to work. It feels more meaningful.

<comment><USER37> How small is your company that you have to order your own components and boards? We only have 45 people in our company but even at our small size we have dedicated purchasing people to do that for us.

<comment><USER36> My company has thousands of employees but I am on an experimental division that only has 13 people in the office. Three of them are entry level engineers. Everyone else is in another time zone. The company is not about electronics so I am not aware of any purchasing people I can use. Even if I could, I am not at the stage when I want to produce tens of thousands of boards yet.

</comment></comment></comment><comment><USER38> Just a note that if you go into automotive, you will spend 90% of your time in Matlab/Simulink. Pretty fun IMO.

<comment><USER39> Can you elaborate on that? What do you use Matlab/Simulink for in the automotive industry?

<comment><USER40> Think it depends on the specific job in the industry, but think the author was referring internal combustion engine control systems / ECU development.

</comment></comment></comment><comment><AUTHOR> So EE today is almost entirely about digital circuitry?

<comment><USER41> I'd guess others are less likely to read HN.

I know people that design electric motors, microphones for hearing aids, overhead electrification for railways, railway signalling systems and power distribution in very large buildings.

However, I don't know what a typical day would be for any of them.

</comment></comment><comment><USER42> Yann LeCunn is in fact an Electrical Engineer!

</comment><comment><USER43> Sleeping all night in night shift.

<comment><USER44> This made a lot more sense after I saw your profile:

> Working as shift engineer in power plant

<comment><USER45> Wow Homer Simpson's job does exist.</comment></comment></comment>


IOS5: There's a reason it's called 'beta' software - <AUTHOR> http://mbarclay.net/?p=1317 <comment><USER2> You can only get so far with a blog post. Have you filed a radar yet? I just did (rdar://9598285). Here's the text you can copy and paste (make sure you mention it's a dupe of 9598285).

 __*

Title: Users leave bad reviews for app that don't work on beta OS releases

Summary:

The point of the prereleases is to give developers time to modify their apps to address any compatibility issues (as well as add new features) before the public release of the operating system. Despite Apple's best intentions at keeping OS betas limited to developers, the fact of the matter remains that average users can and do get their hands on prerelease software. This leads many non-savvy users running applications not meant for the new release and often leave negative reviews on the App Store because the app is incompatible with the new OS.

For example, see this blog post: <http://mbarclay.net/?p=1317>

One potential solution to this is to disallow app reviews for users running unreleased OSes. Another is to tighten up the developer program so that each subsequent beta release allows more and more devices to receive installs. With the current 100 devices per account right off the bat, there is widespread abuse of access to prerelease software.

<comment><USER3> > One potential solution to this is to disallow app reviews for users running > unreleased OSes.

That would only work for on-device reviews, but those users can always leave reviews through iTunes.

<comment><USER2> I think it would be a larger engineering effort to totally block it out, but blocking it on the device would at least preventing "heat of the moment" reviews.

Luckily, most of the larger OS updates also required a new version of iTunes, so they could block it for beta releases of iTunes also.

<comment><USER4> For all itunes accounts who have a beta ios install associated with them, they cannot post reviews until a certain expiry date. Developers would not really mind the trade off and it provides a small disincentive for non developers to not install pre release versions.

</comment></comment></comment></comment><comment><USER5> After years of countless web apps and services hopping on the bandwagon of the perpetual beta, the potency of the term has become diluted. Users don't think of betas as experimental builds of software for testing purposes; they think of Gmail, which only shed its beta status as a formality two years ago with 150 million users.

Give them any path, even a tricky or expensive one, to obtain a beta of a sexy new mobile operating system and they will, expecting it to work as well as the other "betas" they've used online.

</comment><comment><USER6> Unfortunately, beta has come to mean "Private release to a select few individuals" to many people.

As for the bug reports in the review area, I imagine this is for a couple reasons.

First, it's the easy way to give feedback to the developer. I don't know of a way to provide feedback within the App Store architecture other than through the review process. Any other method has a chance of being painful. Being forced to sigh up to some developer site bug tracking system, and then getting sent email after email notifying you of every status update. Of course, I also have to search around for _how_ to contact this particular developer with a bug. There is no easy method that I know of to do this.

Secondly, it's a sure way of getting the attention of the developer. Reviews directly impact the developer, and an email directly to the developer might not get a response as quickly as you want.

I'm not saying either reasoning is correct, or right. I'm not judging the reasoning. I just imagine that's the two biggest reasons for using reviews for bug reports.

<comment><AUTHOR> _Being forced to sigh up to some developer site bug tracking system, and then getting sent email after email notifying you of every status update. Of course, I also have to search around for how to contact this particular developer with a bug. There is no easy method that I know of to do this._

Nobody ever said beta testing was easy, and implying that it should be demeans both the testing professional and the developer.

<comment><USER6> I was referring to not using the review section as a bug report area, something that happens, beta or not. Sorry for the confusion.

</comment></comment></comment><comment><USER7> This makes me wonder how many people ponied up the $99/yr. just to have access to the beta. Actual developers should know better. I wish Apple could figure out some way to prevent this - but if they were to prohibit reviews from people running a beta, they would also prevent legitimate reviews at the same time.

I also think there's a place for non-developers to be running the beta -- if they are responsible citizens. I'm a dev, but not much of one yet. I'm on the beta, and I have discovered plenty of broken apps. When I discover issues, I communicate them directly to the app's developer. As a result I have also ended up beta-testing a number of apps for said developers. This is just as legitimate a use of beta-testing as developers testing their own apps.

<comment><USER3> > This makes me wonder how many people ponied up the $99/yr.

Probably not that many, but each developer gets 100 UDID to activate, and I've seen many adding random UDIDs on their accounts for people who wanted to install iOS5

> they would also prevent legitimate reviews at the same time.

There is _no_ legitimate public review from a beta iOS device. Legitimate reviews from iOS-beta testing will be done directly to the developers, not via the AppStore.

<comment><USER8> Right, if I remember properly when I downloaded it clearly said that the contents of iOS5 are confidential. That to me doesn't mean "blog it all over".

<comment><USER3> Yes, developers are supposedly bound by an NDA on matters of beta iOS versions.

However, I do not know if that NDA has clauses about adding random third-party UDIDs (though developer accounts _have_ been banned for that in the past), and in any case it does not bind those getting their UDID added who do not own developer accounts.

</comment></comment></comment></comment><comment><USER9> I'm going to have to agree with him. It is a bit ridiculous that someone using the iOS 5 beta has their reviews go in along with the rest of them.

Apple should make it so reviews are only shown for the OS of the user's phone, so if I am on iOS 5 I can see the beta reviews, but most average joes still on iOS 4 would only see those relevant to iOS 4.

This also solves an issue of users still on iOS 3 with an app that may no longer be compatible for iOS 3 clogging up the reviews for they aren't relevant for most current iOS users.

<comment><USER10> No that doesn't make sense. As a developer you don't want to start at 0 reviews every time there is a OS update. Reviews are pretty important, and if it periodically looks like you don't have them it would be very bad.

Currently they roll over the reviews ever version of the App the developer releases. That makes sense because bugs get fixed and features are introduced.

You should not see any difference in the different versions of iOS. Though it might perform differently on different hardware.

I feel as if Apple hasn't really done very much to help the developer note what platforms they are targeting in an easy way. If you don't want iPhone 3g users to use the app, they shouldn't be able to download it that that device in the first place etc.

<comment><USER3> > You should not see any difference in the different versions of iOS.

Wrong. Any OS feature available only in version N and above may be used conditionally while the application still works on versions N-1 and under.

Case in point: Apple's Game Center is only available from iOS 4.2 (which excludes 1st generation iPod Touch and original iPhones), and is not available on iPhone 3G.

What if a game developer is OK with a 4.0 baseline, or even a 3.1 baseline so iPhone and Touch 1 users can still play, but he still wants users with compatible devices to have access to Game Center achievements and voice chat?

He conditionally enables the feature.

> If you don't want iPhone 3g users to use the app, they shouldn't be able to > download it that that device in the first place etc.

Set UIRequiredDeviceCapabilities correctly and that's done for you. For instance, the 3G iPhone uses ARM v6 and only provides OpenGL ES 1.1. Require armv7 and opengles-2 and you've ensured your application will not be installable on 3G iPhones.

For an example of that, see Infinity Blade [0] which clearly states it is not compatible with the 3G (more precisely, it specifies that it's for 3GS and 4 in the "required configuration" section) and which will not install on a 3G.

[0] [http://itunes.apple.com/fr/app/infinity- blade/id387428400?mt...](http://itunes.apple.com/fr/app/infinity- blade/id387428400?mt=8)

</comment></comment></comment><comment><USER11> One fix to this problem would be to prevent beta iOS versions from posting feeback at all.

Once they are out of beta the feedback feature can be turned back on.

</comment><comment><USER8> There was a thread on Reddit that people were swapping access to the iOS beta, filled with people complaining about bugs, speed, etc.

These users weren't developers, were essentially pirating the software, didn't file bug reports and clearly just thought that it was something cool to get early and didn't understand the implications of it being a beta.

<comment><USER3> > There was a thread on Reddit that people were swapping access to the iOS > beta

There have been numerous threads on that, starting as soon as iOS5 became available.

> These users weren't developers, were essentially pirating the software, > didn't file bug reports and clearly just thought that it was something cool > to get early and didn't understand the implications of it being a beta.

And those who pointed out these issues were generally mercilessly down-voted.

<comment><USER8> Hivemind at its finest.

</comment></comment></comment><comment><USER12> This is kind of closing the barn door after the horses get out and I realize there is a delay in getting new versions out.

Check the OS version against a list of tested versions.

If the version isn't in your list of tested versions refuse to run, or explain that the software may not work properly and please do not post reviews.

</comment><comment><USER13> The problem is to marketing twerps "beta" means "OMG cutting edge unobtainium LOL" so they not only plaster it everywhere, they don't even know what it really means.

</comment><comment><USER14> I thought iOS and OSX had versioned frameworks etc exactly to avoid issues like this. Yet every beta seems to bring nasty crashers from core functionality. How come?

<comment><USER15> The majority of problems we've seen come in the form of existing API calls that have some slightly new/different behavior.

They seem to do a decent job with versioning major changes. But our App breaks on iOS5 because of subtle changes.

Point being...there are far too many moving parts to expect them to get everything right in a beta release.

</comment></comment><comment><USER10> I think this should not come to any surprise to iOS developers. People use the reviews page as a bug report page. For apps I've worked on we got way more negative reviews for particular bugs than we ever got emails reporting said bugs.

There might be a warning already, but if there isn't Apple should make it very clear that every iOS developer has provided technical support contacts and other helpful links that they can use to report bugs. Bug reports don't belong in the review unless the developer never responded to your contacts or never fixed your bug after contacting them.

I also think that the developer should be able to contest reviews that solely create FUD and aren't really reviews at all.</comment>


Ask HN: Finding a sublease or temporary office space in the Bay Area - <AUTHOR> We're a team of 3, working full time on our bootstrapped startup, and need to find some office space either close to Caltrain in San Francisco, or along the peninsula (also near Caltrain).<p>What are some of the strategies folks use for finding subleases or temporary spaces? Since it's just 3 of us, we only need 150-250 sq ft, which is proving difficult to find. <comment><USER2> If specific areas of the Bay Area aren't important, look for local, small business parks in smaller cities. Often times they aren't advertised very well, or at all. I've found interesting deals driving around and calling the realtor's number. In one case, I talked to an existing resident at the office park and he was able to connect me with the owner, who offered to build out office space (essentially put up a wall) based on how much space I needed, ending up to be a better deal than the realtor offered.

E.g. In Alameda, I found a place for $1.80/sqft for a 70 sqft place. It was enough office space for just myself. Adding internet/utilities, still under $200. In San Leandro, found a 100sqft office space including internet/utilities for $250/month.

Also, another resource I found useful LiquidSpace. [http://www.liquidspace.com](http://www.liquidspace.com)

Edit: just saw your location requirements. My experience is mostly in the East Bay. Near BART, but a long ride to the peninsula.

</comment><comment><USER3> First, I'd really ask yourself if you need an office.

* San Francisco Public Library has fast wifi, private meeting rooms, etc. I worked there for months after I got sick of giving Regus all my money.

* WorkShop Cafe ([http://www.workshopcafe.com/](http://www.workshopcafe.com/)) is awesome, and charges you 2 - 3 bucks an hour to work from their space.

* There are lots of free cafes, hotel lobbies, bookstores, parks with free-wifi, and other places to work.

If none of those work for you, check out WeWork, RocketSpace, NextSpace, Sandbox Suites, etc. There are so many co-working spaces available, that I'm sure you'll be able to find one. They typically have a waiting list for private offices, but there's enough turnover on the open-desk areas that you can normally squeeze in.

</comment><comment><USER4> Regus will do in a pinch; they have one on Folsom Street near Caltrain.

Don't expect it to be cheap, but they're usually not full. They (and others like them) have spaces areawide; you may find some discounts closer to Burlingame or San Mateo, as there's slightly less demand outside the twin orbits of San Francisco and Palo Alto.

If you're bootstrapping, you should defend why you're in San Francisco to begin with. Your runway is far shorter in SF; unless what you're working on will only work if you're there in person, or you're square dancing with funders each day, focusing on working almost anywhere else in the world would be smarter.

</comment><comment><USER5> [http://sunnyvale.thesatellitecenters.com/office-space-for- le...](http://sunnyvale.thesatellitecenters.com/office-space-for-lease/) \-- very close to Sunnyvale CalTrain.

</comment><comment><USER6> This may be unrealistic for a bootstrapped budget, but have you considered WeWork?

[https://www.wework.com/locations/san- francisco](https://www.wework.com/locations/san-francisco)

</comment><comment><USER7> Get emails of a lot of companies and just email them asking if they'd lease space in their office to you

</comment><comment><USER8> I'd say try Airbnb and work your way from there by contacting the owner.

<comment><USER6> Does Airbnb offer office space rental in SF?</comment></comment>


Now you can choose which SATs you want colleges to see and which you don't - <AUTHOR> http://www.nytimes.com/2008/12/31/education/31sat.html <comment><USER2> Let's see if my FAQ on this subject prepared for another forum, updated with all the latest sources except this latest New York Times link that robg has kindly posted here on Hacker News, is of interest to readers here.

ONE-TIME TEST-TAKING

Colleges have given up trying to distinguish one-time test-takers from two- time or three-time or even four-time test-takers, because that wasn't useful information to the colleges. There are a number of reasons for that.

1) The colleges have utterly no way of knowing who spends all his free time practicing taking standardized tests and who takes them "cold."

2) The colleges are well aware that students who have actually taken the tests sometimes cancel scores, so they have little incentive to give students bonus consideration if the students submit only one test score.

3) The colleges are aware that students who take the admission tests at middle-school age, who are numerous, do not have their earlier test scores submitted by default.

[http://www.collegeboard.com/student/testing/sat/reg/circum/y...](http://www.collegeboard.com/student/testing/sat/reg/circum/younger.html)

<http://www.hoagiesgifted.org/talent_search.htm>

[http://www.tip.duke.edu/resources/parents_students/interpret...](http://www.tip.duke.edu/resources/parents_students/interpreting_SAT- ACT_scores.html)

4) Colleges are aware that the majority of students who take the SAT at all take it more than once.

[http://professionals.collegeboard.com/profdownload/Avg_Score...](http://professionals.collegeboard.com/profdownload/Avg_Scores_of_Repeat_Test_Takers.pdf)

5) Colleges are in the business of helping students learn, and they don't mind students taking efforts to improve their scores. They know that students prepare for tests.

From the New York Times: "Although coaching would no doubt continue if subject tests replaced the SAT, at least students would be focused on content as much as test-taking strategies, Mr. Murray said. There would also be pressure to improve local high school curriculums so that students were prepared, he wrote.

"These arguments make sense to Mr. Fitzsimmons [dean of admission at Harvard], who said, 'People are going to prepare anyway, so they might as well study chemistry or biology.' He added that 'the idea of putting more emphasis on the subject tests is of great interest' to his group."

[http://www.nytimes.com/2007/09/19/education/19sat.html?pagew...](http://www.nytimes.com/2007/09/19/education/19sat.html?pagewanted=print)

6) And now the College Board is back in the business of letting students choose which test scores to send into colleges,

[http://professionals.collegeboard.com/testing/sat- reasoning/...](http://professionals.collegeboard.com/testing/sat- reasoning/scores/policy)

so now there is less reason than ever to suppose that colleges care how many times you take the test, because the colleges have no way to know how many times you took the test officially.

Colleges treat applicants uniformly now by considering their highest scores, period.

[http://talk.collegeconfidential.com/parents- forum/349391-ret...](http://talk.collegeconfidential.com/parents- forum/349391-retake-how-many-times-take-sat-act.html#post4198038)

[http://www.admissions.college.harvard.edu/utilities/electron...](http://www.admissions.college.harvard.edu/utilities/electronic_resources/viewbook/Rollo0809_GuideApplying.pdf)

From the Harvard admission office: "If you submit more than one set of scores for any of the required tests, the Admissions Committee considers only your best scores—even if your strongest SAT Subject Tests or portions of the SAT Reasoning Test were taken on different dates."

See also a Newsweek article about the renewed score choice policy adopted by College Board.

<http://www.newsweek.com/id/172585>

Some colleges want to see all scores a student has ever obtained, period, but as one admission officer asks, if "a student submits a single best sitting of 2320," does anyone really care "how low were her other score sets?"

<comment><USER3> It isn't much of an aptitude test in this case.

<comment><USER2> In what case would it be an aptitude test?

<comment><USER4> All aptitude tests will fail once they become a standard, because suddenly test-takers are able to prepare for their test. Take the SAT. All students are told by teachers that it's in their best interests to buy books of old tests so they can see and memorize the questions and see patterns for answering in the new test. The test suddenly becomes a metatest: the real test is very often about how well you can prepare for a test. And in the end, it doesn't matter, because within a certain percentile colleges don't care. It's all so that CollegeBoard can make a lot of money and certain colleges can use the SAT as a qualifier to filter students more quickly.

A real aptitude test might test students' abilities to form opinions and chains of logic. They might test, rather than their ability to write a five- paragraph essay or to understand an analogy, the ability of a student to convey information with as precise language as possible. A math aptitude test may test a student's ability to prove points - but rather than using an obscure formula like current high school geometry, it would use natural language and grade on the idea rather than the jargon.

Really, the only aptitude test that matters and can't be faked is one for creativity, and that's only because you _can't_ test on it. (A year ahead of me at the New Jersey Governor's School for the Arts, according to our head instructor, was called by CollegeBoard to try a hypothetical test for creativity - including a multiple choice section, of all things. The test was abandoned when all the handpicked students gave extremely different responses to every question.)

I think that's why colleges are abandoning the SAT test as criteria. Some top- notch colleges don't ask for test scores at all (some are even weaning away from GPA, which is a godsend for certain types of students). That's a smart choice on their part. What do test scores prove? Our year's valedictorian, a very bright girl who also took a dozen SAT practice tests, got a 1600 on the main section. I had no practice tests and got a 1510. In the end, the numbers are so close as not to matter. Even a perfect 800 category means nothing other than a person's happening not to slip up (and with a 4-hour test, slip-ups are all too common). Our principal, at a ceremony, gave us awards for our perfect sections while talking about how this made us perfect scholars. This is a terrible mindset with testing and it encourages things to get only worse.

<comment><USER2> "I think that's why colleges are abandoning the SAT test as criteria. Some top-notch colleges don't ask for test scores at all"

What is the evidence that colleges are abandoning the SAT test? What top-notch colleges do you specifically have in mind that don't ask for test scores at all?

Some comments on trends in college preferences for test scores can be found in

[http://talk.collegeconfidential.com/harvard- university/57965...](http://talk.collegeconfidential.com/harvard- university/579659-report-harvard-info-session-sunday-28-september-2008-a.html)

of which the immediately relevant part is a statement by a Harvard admission officer at a public meeting, "There are a lot of students with A's, and test scores help us distinguish among them. Standardized tests are comparison tools. The better predictors are SAT II Subject Tests and AP tests. They are more important than the SAT I or the ACT. You may have read that colleges are expressing doubt about standardized tests, but I'll give you a clue: We won't be cutting back on tests. We might require five SAT II tests. Those are less coachable than the SAT I."

The largest number of colleges that are publicized as SAT-optional might in fact better be characterized as admission-requirement-optional, as they admit most applicants who apply at all, and in many cases have explicit open- admission policies.

"a very bright girl who also took a dozen SAT practice tests, got a 1600 on the main section. I had no practice tests and got a 1510. In the end, the numbers are so close as not to matter."

This is a good point. Students who obsess about a perfect SAT score simply don't understand the theory of estimating mental abilities. Any one instance of taking the test is a sample of learned behavior, and no such sample is exhaustive.

Because almost all students make mistakes on the SAT, and because all colleges desire to fill their entering classes each year, all colleges everywhere gladly admit students who made mistakes on the SAT.

[http://talk.collegeconfidential.com/college- admissions/41382...](http://talk.collegeconfidential.com/college- admissions/413821-sat-score-frequencies-freshman-class-sizes.html)

And yet, a perfect SAT score does not guarantee admission at any college.

[http://talk.collegeconfidential.com/parents- forum/377882-how...](http://talk.collegeconfidential.com/parents- forum/377882-how-do-top-scorers-tests-fail-gain-admission-top-schools.html)

So really students worry far too much about the SAT when they could be doing something important like reading a challenging book about a subject they like or pursuing a personal project that satisfies their curiosity.

</comment></comment></comment></comment></comment><comment><USER5> Just another way for the ETS to sandwich more money.

</comment><comment><USER6> I wish it had been so when I wrote the SAT.</comment>


Malthusianisms - <AUTHOR> http://scottaaronson.com/blog/?p=418 <comment><USER2> Two economists are walking down the street when they see a $20 bill lying on the sidewalk in front of them. The first economist goes to pick up the money but his colleague stops him and tells him not to bother.

"Why not?"

"If it were a real twenty dollar bill, someone would have picked it up already."

</comment><comment><USER3> _Why can't everyone just agree to a family-friendly, 40-hour workweek? Because then anyone who chose to work a 90-hour week would clean our clocks._

Well, if you look at a fair chunk of Europe, everyone _has_ agreed to work reasonable hours, largely, and the nutters like myself who work their socks off are few and far between. Of course, you could say that the rest of the world is about to clean Europe's clocks, but that's by no means certain.

<comment><USER4> Unfortunately, at least France and Germany seem to want to start emulating the US in this regard. So they're increasing length of their work weeks:

<http://online.wsj.com/article/SB124835745710975827.html>

<http://www.thelocal.de/national/20090731-20935.html>

Also muddying the waters is that, by some measures, Americans have more leisure time than Europeans:

[http://www.examiner.com/x-14795-Page-One- Examiner~y2009m8d13...](http://www.examiner.com/x-14795-Page-One- Examiner~y2009m8d13-Those-ever-longer-working-hours-of-Americans)

</comment></comment><comment><USER5> In my opinion Malthus is getting way too much credit considering real life proved him wrong.

The examples provided in the article are actually pretty good and clever examples, but they are accurate because they do not apply to the one thing Malthus talked about -- human populations. If you actually consider human populations, you will quickly discover that all these Malthuisms fall apart pretty quickly. Which makes sense considering humans are complicated beings and not simple autonomons like mice that will breed at any opportunity.

According to Malthus, the richer a population is the more it will grow and it will get poorer, so please do not bother helping poor countries, or poor people. Instead let them be poor so they automatically limit their populations. Oh and also we cannot achieve a great society where there is no poverty, because when there is no poverty people will just starts breeding like rabbits until everyone is poor again.

But of course in real life everything is backwards. The poorer a country is the more its population grows. In a country with income disparity the poor income groups grow much faster than the rich, and sometimes the rich ones do not grow at all.

This planet suffers from population overload but most of it is caused from poor populations (poor countries, or poor groups of rich countries).

If a poor country becomes richer relatively quickly it does not suffer a population explosion. On the contrary, population growth rates plummet and may even go negative. See Japan and South Korea.

So yes, Malthus is not really correct, and yes we can improve society and helping the poor is not a waste of time.

<comment><USER6> > In my opinion Malthus is getting way too much credit considering real life > proved him wrong.

Additionally, William Godwin refuted his arguments, at the time. But gets no credit.

BTW, no one seems to have mentioned it, but Malthus said that food production grows linearly, whereas human populations grow geometrically, so food production won't be able to keep up.

</comment></comment><comment><USER7> A common thread to these Malthusianisms is that you can't understand dynamic phenomena by assuming they're static.

Something like the number of hours in a work week isn't just a fixed number; it's got a history behind it and driving forces on it that are needed to make sense of its current and future values.

Aaronson implies that he thinks about these situations by trying to figure out what Nash equilibrium they might settle to, but I think even that concept's not general enough. In the real world, people don't make their minds up once and then stay the same afterwards -- they'll change their behavior over time, and not always towards any equilibrium state.

</comment><comment><USER8> The idea that usage will always fulfill capacity is a little too general for my liking. Sometimes, perhaps often, the case, yes; but always? No. Population decline in Europe despite a very high quality of life and an abundance of resources, anyone?

<comment><USER9> It will be interesting to see how long the population decline lasts for. At some point, ethnic/cultural/religious segments of the population with the highest birthrates will begin to be a large portion of the population. As that happens, birthrates will bottom out and then start to rise back up again.

<comment><USER10> Already happening in Israel: <http://www.foreignpolicy.com/story/cms.php?story_id=4956>

</comment></comment></comment><comment><USER11> You know what struck me about this? It was really well written. Not the greatest of ideas or observations, but I can't recall the last time I red something on the internet that was this well written!

</comment><comment><USER12> Why are freeways crowded?

</comment><comment><USER13> Am I the only one who's been reading this as "malthusiasms", i.e. anti- enthusiasms?</comment>


China may use rockets to modify weather to ensure Asia Games not disrupted - <AUTHOR> http://english.people.com.cn/90001/90779/90867/7188828.html

<comment><USER2> This is common practice in China. Whenever there is clouds, they shoot them and get the rain. Korea is always mad for "stealing" the clouds!</comment>


What are your favorite reads in the web? (Besides HN) - <AUTHOR>

Mine: Reddit, Overheard in NY, Business Oprtunities, Dilbert, PostSecret the best of Craiglist. <comment><USER2> One of my most regularly visited links is <http://aldaily.com/>

<comment><USER3> A good one to add to my portal. Thank you!

</comment></comment><comment><USER4> The New York Times, Fake Steve Jobs, Wired, to name a few.

Some of the very best reads are one-offs. This comes to mind: <http://www.improvresourcecenter.com/mb/tpcs.html>

</comment><comment><USER5> Cartoon: Achewood

Blogs: Philalawyer.net, 37Signals' Signal Vs. Noise, Blog Maverick, all the Overheard in * blogs

One-offs: 37 Signals' Getting Real, public domain books including Letters to a Stoic and Walden to name a couple

</comment><comment><USER6> Techcrunch --> <http://www.techcrunch.com>

Lifehacker --> <http://www.lifehacker.com>

NYTimes --> <http://www.nytimes.com>

Discover Magazine --> <http://discovermagazine.com/>

Onion --> <http://www.onion.com>

Valleywag --> <http://www.Valleywag.com>

</comment><comment><USER7> Ones not already mentioned: <http://www.atomicwang.org/motherfucker/Index/Index.html> (programmer at Delicious Monster), <http://ask.metafilter.com/> (Q&A site on a wide range of subjects), <http://daringfireball.net> (Mac weblog).

</comment><comment><USER8> <http://www.boingboing.net>

<http://www.waiterrant.net>

<http://www.offthebroiler.com> (though it really went downhill when the author started trying to eat healthily)

</comment><comment><USER9> <http://www.fullasagoog.com> \- the Adobe aggregator

</comment><comment><USER10> Skrentablog, QuickSprout, Signal vs noice, Seth Godin and less and less everyday Techcrunch

</comment><comment><USER11> wonkette.com (during election season), reddit, aldaily.com, sciencedaily.com

It seems like there used to be more stuff worth reading on the web, but that's probably just my mental facilities going to hell as I get old (x > 30)

</comment><comment><USER12> <http://ajaxian.com> is a good one

</comment><comment><USER13> <http://www.dilbert.com/>

<http://www.thedailywtf.com/>

</comment><comment><USER14> steve yegge blog rant

</comment><comment><USER15> Coding Horror, Reddit, 37Signals Signal Vs Noise, Joel on Software, blog.pmarca.com</comment>


UseTheSource: O'Reilly book giveaway - <AUTHOR> http://news.usethesource.com/item?id=243

<comment><USER2> Great idea. I hope this helps UseTheSource get some traction.

<comment><AUTHOR> Thanks. It was really kind of O'Reilly to suggest this.

</comment></comment><comment><USER3> Not really on topic but:

Insanely cool google custom search implementation :)

<comment><USER4> I agree, however, one suggestion would be to make content all left aligned. UX studies show the eye can scan much faster if everything is left aligned.

 _Most people find themselves using center alignment for these things. Why? The reason is three-fold:

It feels comfortable. It's a way to make these elements "stand out," or to draw attention to them. It's what everyone else is doing. Yes, center alignment does feel comfortable. And quite frankly, it will be more than a mite uncomfortable to break away from using it. But it interrupts the flow of people who are scanning when their eye has to jump to a section in the middle of the page. As a matter of fact, your readers may be intentionally skipping over those center-aligned headings and subheadings that we all know are such an integral part of web site copy. GASP!

Here's a suggestion. Instead of using center alignment to make your heading, subheadings, etc. stand out, align them to the left and use a larger and bolder font size for them. Using a different color is also a consideration, but use caution. Colored text can also cause readability issues.

Sure, everyone else is center aligning like crazy. That means a lot of web sites are difficult to read and causing unnecessary eyestrain on their poor visitors. But by left aligning your text, you'll keep your web site visitors blissfully reading and sticking around, which is exactly where you want them._

\-- [http://www.learntodoitright.com/2009/01/14/how-text- alignmen...](http://www.learntodoitright.com/2009/01/14/how-text-alignment- affects-online-readability/)

<comment><AUTHOR> Done</comment></comment></comment>


000Webhost Hacked - 13.5 Million user accounts dumped - <AUTHOR> http://www.forbes.com/sites/thomasbrewster/2015/10/28/000webhost-database-leak/ <comment><AUTHOR> Passwords were stored in plain text... Why???</comment>


Slicehost Accounts Converting to Rackspace Cloud Server Accounts Over Next Year - <AUTHOR> http://go.rackspace.com/index.php/email/emailWebview?mkt_tok=3RkMMJWWfF9wsRoksqjMZKXonjHpfsX%2B7%2BgsUa%2B2lMI%2F0ER3fOvrPUfGjI4FTMNqI%2FqLAzICFpZo2FFKG%2BOeb5BB%2BfA%3D

<comment><USER2> Not mine. Sorry, just closed my account and moved to the AWS free tier for the next year. I love the SliceHost model, but they just aren't playing the game anymore. Linode provides 512mb of RAM for the same price as the 256mb SliceHost offering. So why didn't I jump over to Linode? Honestly, because I'm lazy and I like learning new things.

Start to finish, I had my new EC2 Micro Instance up, running, with ZNC (w/ colloquy) installed in under a half hour. Not only was it freaking fast (~613mb RAM helps), but its free for a year. I took a snapshot of the install just in case, and now its golden. Firewalls, SSH keys, and package repos just worked.

 _shrugs_ Thankfully my only VPS is for play time, so I can move it around all I want, destroy, and rebuild it.

<comment><USER3> Is there a particular tutorial you recommend? It's been a while, but last time I tried EC2 I found it hard to get things going.

<comment><USER2> Honestly, I didn't use one. I thought I was going to need a book or two to get started, but all I did was sign up for EC2, launch a Micro Instance with the Amazon Linux 32bit Image (eligible for the free tier), downloaded the keys, and ssh'd in. The only hitch I ran into was you have to log in as ec2-user, not root, with the keypair. After that, it was smooth sailing. Micro instances uses EBS for boot and local storage, so I think they persist after termination. Anyone is free to chime in and correct me, but I think the larger instances have 'local storage' that is purged on reboot in addition to EBS.

My only advice would be to fire one up, and try it out. Either its gotten a lot easier, or I've gotten a lot smarter. The former is far more likely. :)

<comment><USER4> You are correct in that local storage is wiped when instances terminate. Micro instances don't have local instance storage, only EBS. :)

</comment></comment></comment></comment><comment><USER5> There's a discussion going on at <http://news.ycombinator.com/item?id=2510300>

</comment><comment><USER6> I've been using the rackspace cloud servers for almost two years and aside from their slow control panel (please someone give them a ui/ux person) it's a great service that is very simple to use and has been incredibly reliable.</comment>


Ask HN: What should this role be called? - <AUTHOR> The duties are:
* Look for performance and scalability problems for two products caused by inefficient code, and then fix them.
* Continually refactor code written by others in the company for two products.
* Responsible for the hardware-architecture of two systems. (e.g. where servers are located, how many, which database..., what ports,...)
* Setting up a process of continuous integration and unit testing.
* Review code written by others in the company.
* Communicate and coordinate with (outsourced) sysadmins who manage our servers.
My employer wants to call this "product management" since I'm "managing products" but that is incorrect, so I want to suggest a less incorrect name to label all these tasks. Product management involves what to build into a product to satisfy user demand; the above tasks include none of that. He is reluctant to call me "Lead Engineer" because there are already engineers leading each product; and 3 lead engineers out of 5 seemed a lot.
Basically, the technical founder of the startup I work for wants to transition into sales and needs someone to (slowly) replace him.
I might as well ask what would you expect the salary for this position be? I won't be doing all of it at first because I'm not experienced in all of those tasks; he plans to spend several months or more for training and transition. <comment><USER2> On the basis of the first two lines, I would have said "Interface Engineer." The issue, the problem, is the interface between the two products. So -- Interface Engineer.

But as I read on, I see it's a bit more complicated than that. So maybe my suggestion isn't ideal.

<comment><AUTHOR> The two products share some code but the systems aren't connected. I mis- worded the first point...

</comment></comment><comment><USER3> Principal Engineer or Lead Engineer. In particular, you want someone with experience in very early-stage startups (where they might have been responsible for some hardware decisions).

<comment><AUTHOR> Thanks.

"very early-stage": Is it relevant we currently have over 100,000 users and are already profitable?

<comment><USER3> The point about the "very early stage" is that it's unlikely for _one single_ person to have all the skills you want _unless_ they had no other choice, i.e. they were the first or second engineer in a startup.

So, to find one person to satisfy your job description, look for someone who was an early engineer at a startup.

Or, hire two people (who will usually cost you less money).

In SV, the recommendation is to hire that _one special person_ , but I'm not so sure. This is particularly true if you live outside a hub (SV, Seattle, etc) and this type of employee becomes even more rare.

</comment></comment></comment><comment><USER4> For me the position is more like a dev Team Director coz it's involved with front-end, backend, testing, performance and etc.

</comment><comment><USER5> Maybe something like Performance Optimization Engineer, given the amount of code review and refactoring involved.</comment>


Wake up and smell the new dotcom brew - <AUTHOR> http://www.telegraph.co.uk/money/main.jhtml?xml=/money/2008/03/30/ccdotcom130.xml <comment><USER2> Out of all of the "ones to watch", I only liked videojug (although the site does look a bit messy); the others, meh. I am sure - and hope - they will all be successful, but where are the UK companies that really push the envelope and do something truly innovative?

</comment><comment><USER3> This is a telegraph article. Does anyone else have problems with their print option when they have a piece extending over several pages? I can only print the first page.

</comment><comment><USER4> I can't help but think the hype over this is the beginning of the end...</comment>


The rise of Monero - <AUTHOR> https://cointelegraph.com/news/5-major-reasons-why-monero-has-spiked <comment><USER2> It rose because it was hyped by placement-articles a good week prior to the supposed week of monumental rise:

[https://hn.algolia.com/?query=monero&sort=byDate&prefix&page...](https://hn.algolia.com/?query=monero&sort=byDate&prefix&page=0&dateRange=all&type=story)</comment>


Ask HN: What happened to my saved/upvoted links? - <AUTHOR>

Hi, I believe the link "saved stories" on ones profile page used to display all the HN-posts one had upvoted. Today when I wanted to find an old page, I found that my "saved stories" page only had posts up to 44 days ago. And I am pretty sure I've upvoted many posts prior to 44 days ago.<p>What happened to my saved/upvoted links? <comment><USER2> This may be a byproduct of a memory-saving optimization we did recently. I'll investigate.

<comment><AUTHOR> It's working for me now, so it looks like you resolved it! Thanks you!

</comment></comment><comment><USER3> Happens for me, too. Mentioned for larger sample size.</comment>