Slashdot is powered by your submissions, so send in your scoop

 



Forgot your password?
typodupeerror
×

Comment Re:Meh (Score 1) 435

It isn't that the OS doesn't clean up. In embedded compact as I understand it, all the dlls loaded under a process share that processes' free store. If Driver.exe loads a dll (as is the case with kernel mode dlls) then that dll is using Driver.exe's free store and the OS won't magically free memory allocated to the dll when it is unloaded.

Comment This is cool! (Score 1) 92

Why are we comparing coding bootcamps and CS undergraduate enrollment? There is very little overlap here. Apples and Oranges.

Seriously people, if you didn't get a CS or CompE degree take it from someone who has: you don't really learn to program in college. You don't. Most engineering disciplines take a CS101 intro to programming where you may learn the basics of Java, you might make some really basic programs where no one will teach you style, design, code reusability, architecture, anything. If you click run in netbeans and some numbers spit out in your output window you get a passing grade. Thats it. For the rest of your college career you are on your own. Most people graduating with CS or CompE degrees can't program professionally, but they have the tools to learn from others and teach themselves. From my experience in about 3 months with someone willing to be a sort of mentor/teacher they can stand on their own professionally.

So now that we understand that you don't learn "coding" in a CS or CompE curriculum, I am again asking: why are we comparing CS and boot camp enrollment? The headline insinuates that they are similar when they are very very different.

Now a message to practitioners (this may only apply in the embedded world, nomenclature varies drastically between embedded, desktop, web development):

Software Engineers: people coming out of bootcamps aren't going to take your job! You have to know this.

Programmers/Coders/Keyboard-Fu artists: well these people are going to compete with you for your job but I'm guessing you don't have a CS or CompE degree, and if you do explain to your boss that you can do software engineering and you're not just a human input machine turning someone's designs into code. If you are you never had a lot of job security anyways. (I personally don't believe in the "Engineer makes the architecture, coder implements the design" pattern, I and many much smarter and more experienced people insist that the designer/architect must code).

There is a lot of negativity around here directed towards the boot camps. I was sceptical too at first, but the more I thought about it the more I feel like these boot camps are very similar to community colleges. Unfortunately there are companies who insist that software engineers should make UML diagrams all day and then hand everything off to some poor sap that has to decipher incoherent nonsense and make a functioning piece of software. Thats where these bootcamp people fit in.

There are small businesses that need someone to write a basic shopping cart module for their website. Perfect for a boot camp graduate.
There are professionals and business owners who really want to learn how to do basic coding but don't know how to teach themselves, they are perfect candidates for boot camps.

If you think you are going to have a 35 year career with just a boot camp certificate alone you may want to rethink that strategy. Otherwise these things aren't bad.

Comment Re:Very specific point answer (Score 2) 435

I would fire coders using naked pointers.

I think this really reflects the flexibility of C++. You can write bare metal code and you can write high level application code ini the same language. There are so many situations where naked pointers are superior to smart pointers and the other way around, and if you get the two camps in the same room there is a good chance they will kill each other trying to convince the other side that their way is the one true way.

Comment Re:Using C++11 and STL in Embedded (Score 1) 435

Understandable.

I understand the smart pointers benefit when it comes to exceptions. However we don't use exceptions. We write kernel mode stuff and really haven't found a use for them yet. They are awesome in other contexts.

It would probably be beneficial for one of us to introduce smart pointers into the project for the other benefits, no one likes memory leaks.

We also don't hire people who have only used C# or Java.

Comment Re:Meh (Score 1) 435

I don't know anyone who worries about garbage collection in C++11.

Quite. The OS cleans it all up after the application exits, anyway.

Unfortunately not true for drivers/dlls. The freestore belongs to the loading process, so any unreleased memory still exists after the driver unloads.

Comment Using C++11 and STL in Embedded (Score 1) 435

In every project I have worked on it has been really important to try to write OS agnostic code. Some projects can afford a WinCE license, some projects would rather have a more stripped down RTOS type of thing so its really important to write as much code as possible without referencing the OS. C++11 makes that a bit easier with std::mutex and std::condition_variable. You get a platform independent mutex and with a little work a platform independent events/signal class (providing your target OS/compiler supports C++11, may don't yet). Also beware: Visual Studio 2012's c++11 implementation of std::condition_variable is buggy, they have fixed it in 2013.

Furthermore, If you are working with the STL and algorithms you should really go over std::function and move semantics. std::function helps lambdas, functors, and callbacks look the same and all the sorted containers will accept a std::function as a predicate. Move semantics help avoid needless copies for objects that are on the free store.

So as for practicality from one practitioner: Use of the cool new features of C++11 and the STL scare some people. I don't mean that offensively, it's not without merit. What I have experienced is that the amount of whining someone does about C++11 and the STL is a function of their age. Why? Because an inexperienced person may try to grow a vector in a interrupt or not understand what template bloat means, probably because they have never experienced missing interrupts or running out of codespace. Why is this caution bad? Because you can get a 1+GHz/256+MB SOC with nearly unlimited code space for less than $10. There still needs to be balance, and a good understanding of which threads are real time and which aren't, but an average dev can be much more productive using the STL and new features of C++11 than someone jumping through hoops to avoid using the STL.

Personally, I don't like auto_ptr and would avoid the smart pointers. They are really cool in trivial applications but it is as easy to screw up mem management with auto_ptr as it is with naked pointers in more complicated situations (IMO YMMV).

Submission + - Programming in schools (economist.com)

kyrsjo writes: The Economist has an article on how information technology — the real stuff, not just button-pushing — is making it's way back to schools across the world. As the article argues: "Digital technology is now so ubiquitous that many think a rounded education requires a grounding in this subject just as much as in biology, chemistry or physics."

In today's society, teaching computer science in schools is absolutely necessary, and that means getting a real understanding of computers and how they work. That requires working with algorithms and programming, not just learning which buttons to push in the program that the school happened to use.

Comment Re:Mike Rowe has a lot to say on this (Score 1) 367

going to a 4 year college makes it more likely they will be successful. Of course, they needs to be smart about what they do.

Your second sentence is really really important, you can't just ignore that. Just telling them to blindly go to college is a bad idea.

If going into a trade is trivial why is there a shortage of skilled tradespeople?

Comment Mike Rowe has a lot to say on this (Score 1) 367

Check out what Mike Rowe has to say about this problem, he has some really great insight.

Now my thoughts: Unfortunately we as a society look down on skilled trades. I remember when I was 16 my dad asked me if I wanted to work with my back or with my brain, implying that there was something wrong with skilled labor. If you show aptitude for math or science in High School your counselor will dissuade you from shop or auto repair and push you into AP math and science with the intent of you going to get a STEM degree. Our public school systems, especially the wealthy ones, almost exclusively push 4 year universities as the only option to graduating seniors.

Furthermore, there are a lot of "help the kids in the inner city" teaching programs where the soul goal is to get kids from impoverished school districts into 4 year colleges. These organizations are doing some good work but I have to strongly disagree that the only or even best way to break the cycle of poverty is to force someone into a 4 year university while completely and intentionally ignoring the many skilled trades that person could pursue. A kid with a apprenticeship in welding or high tech manufacturing is going to be able to change his life in a much more positive way than a kid with a degree in comparative lit and $60,000 in student debt. These programs really need to offer a more complete picture of the options facing graduating high school students.

American culture has promoted the 4 year university as the "only" way to be successful for decades. Blame the liberals, blame the academics, blame the politicians, blame the student loan companies, blame whoever. We have a shortage of skilled labor because we as a nation have treated skilled labors as a lower caste for years.

Comment Can't just quit every time (Score 1) 183

I have worked on embedded machines that implemented no security. My boss said "our competitors don't worry about security why should we?" I said because someone could die. It isn't that hard to envision a scenario where someone could compromise our system and render it inoperable because our lack of security.

Guess what, I was a junior engineer with no pull on a project that was do or die for the business. I finished and quit as soon as possible. Not everyone can do that. This isn't a software engineer's problem, it is a business problem.

Comment Not our education system (Score 3, Interesting) 306

You can't blame everything on our education system.

First, the majority of people do not possess the ability to think critically. You can't teach that skill. You can try to foster what ability a person might have but you can't turn someone with no ability to think critically into someone who exemplifies that ability. By middle school someone either can think for themselves or they can't.

Second, why is everything the education systems fault? Why don't parents encourage their children to think critically? Why aren't parents responsible for enriching their child's development so that they develop the skills needed to succeed.

Reality check: not all teachers think critically. There are a lot of people of average to below average intelligence / critical thinking ability that are teachers. Want great teachers? Do you want the cream of the crop? Then pay them to deal with your whiny privileged spawn instead of the much more glamorous and lucrative jobs they have. Instead of attracting the best talent we have states actively eroding teacher benefits which drives the talent away and opens the door for Teach for America type excuses for real teachers.

Yes I agree there are a ton of people in IT and every other profession who completely lack the ability to think critically.

No I do not blame "our education system"

Submission + - Survey: 56 Percent of U.S. Developers Expect To Become Millionaires (adtmag.com) 1

msmoriarty writes: According to a recent survey of 1,000 U.S.-based software developers, 56 percent expect to become millionaires in their lifetime. 66 percent also said they expect to get raises in the next year, despite the current state of the economy. Note that some of the other findings of the study (scroll to bulleted list) seem overly positive: 84 percent said they believe they are paid what they're worth, 95 percent report they feel they are "one of the most valued employees at their organization," and 80 percent said that "outsourcing has been a positive factor in the quality of work at their organization."

Comment News? (Score 4, Insightful) 133

This would have been news if Comcast didn't give every member of congress that had anything to do with their merger money.

People don't care anymore. The people in power have switched the conversation from us (regular people) vs them (those in positions of power) into us ("democrats") vs us ("republicans"). If you point out that huge corporations bribe congress someone will point out that huge unions bribe congress. If you point out that the oil/gas sectors bribe republicans someone will point out that hollywood bribes democrats. We can't have a conversation about how it is wrong for any special interest to have that much influence just because of $ because we are too busy beating each other over the head.

The argument people have now is: "my special interest should be lobbying, your special interest shouldn't".

Comment Re:Back up your vote with your wallet (Score 1) 195

My point is that many individuals form a collective. If every person says that individual economic pressure isn't worth it then the collective never grows large enough to make a difference. It's the same thing that happens with voting for third parties, people do not think that their vote matters so they either don't vote or throw it away.

How many thousands of people voted in this survey? If half of them boycotted the companies they voted for for the period of one year the companies would take notice.

Slashdot Top Deals

Get hold of portable property. -- Charles Dickens, "Great Expectations"

Working...