Search the KHIT Blog

Tuesday, March 14, 2017

12 weeks, 1,200 hours, and $12,000, and you're a "Software Engineer"?

Really?

I just got a new Twitter Follow.


I reciprocated, as is my general custom (unless they're scammers trying to sell me an instant "5,000 new Twitter followers," or some attractive ostensibly "young woman" with her boobs hanging out of a spaghetti strap halter top in the selfie profile pic).

I reached out to them. Have yet to hear back. (3/17 Update at the bottom of this post.)

"Boot Camp," 'eh? 12 weeks, 1,200 hours, and $12,000, and you're a "Software Engineer"?

Discover life as a Zip Coder
Our students come from all walks of life. Working with teachers, artists, bakers and more, Zip Code Wilmington trains motivated individuals from diverse backgrounds into professional software engineers...
Pretty interesting.
Zip Code Wilmington’s Java Boot Camp is 12, intense, weeks long.

Classes run from 9am-5pm, 5 days a week. But expect to spend as much time as you can at our facility, interacting with mentors, and learning with other students. Learning Java is not easy, and you’ll need the extra time. This is an immersive program.

You will be expected to stay in the area for the duration of the program. Let us know if you need help relocating.

We believe in pair and small-group coding. Our aim is to create an environment that is as close to what you’ll find in the workplace as possible.

Following the in-class training, area companies hire select graduates for paid, 26-week apprenticeships and direct-hire jobs. These apprenticeships will be in and around Wilmington, Delaware...
During the program you will learn the ins and outs of software development from a Java point of view. You’ll learn object-oriented programming and the basics of computer science. You’ll come out with a background that will help you adopt almost any coding language, and that will help you succeed at almost any company.
CURRICULUM
1) THE BASICS of COMPUTATIONAL THINKING
Computer Math
Hardware: Storage, Memory, Servers
Object Oriented Programming
Design
2) THE JAVA LANGUAGE

3) TOOLS IN THE TOOLBOX
JUnit
Maven/Ant
Subversion/Git
MySQL/DB2
Tomcat
Jira/Confluence
4) FRAMEWORKS
Spring MVC
Hibernate
Apache Struts
JSP
5) UI AND INTERFACE
Javascript
HTML/CSS
JQuery
6) REAL WORLD
Overview of Software Engineering at a Typical Corporation
Agile/Scrum
Code Reviews
Project Planning
Requirements Gathering
Release Management
Version Control
That's a lot of subject matter competency to assimilate in 12 weeks to acquire the title "engineer," no?


"Title Inflation?" Yeah, your garbageman is now an "Environmental Management Professional."

From the Wiki:
Suitability of the term
Main article: Regulation and licensure in engineering


One could argue that software engineering implies a certain level of academic training, professional discipline, adherence to formal processes, and especially legal liability that often are not applied in cases of software development. A common analogy is that working in construction does not make one a civil engineer, and so writing code does not make one a software engineer. Furthermore, because computing doesn't utilize the methods of mathematical physics common to all conventional engineering disciplines, it is more appropriate to call those engaged in this occupation as software developers or similar.

In 1978, computer scientist E. W. Dijkstra wrote in a paper that the coining of the term software engineer was not useful since it was an inappropriate analogy, "The existence of the mere term has been the base of a number of extremely shallow—and false—analogies, which just confuse the issue...Computers are such exceptional gadgets that there is good reason to assume that most analogies with other disciplines are too shallow to be of any positive value, are even so shallow that they are only confusing."

In each of the last few decades, at least one radical new approach has entered the mainstream of software development (e.g. Structured Programming, Object Orientation), implying that the field is still changing too rapidly to be considered an engineering discipline. Proponents argue that the supposedly radical new approaches are evolutionary rather than revolutionary.

Individual commentators have disagreed sharply on how to define software engineering or its legitimacy as an engineering discipline. David Parnas has said that software engineering is, in fact, a form of engineering. Steve McConnell has said that it is not, but that it should be. Donald Knuth has said that programming is an art and a science. Edsger W. Dijkstra claimed that the terms software engineering and software engineer have been misused and should be considered harmful, particularly in the United States.
Whatever. Moving on, the Java language is widely touted as the #1 general purpose language of late ("write once, run anywhere").


Database Ops SQL doesn't really count as a "general purpose language" (and, btw, pedantically, it's not 'pronounced 'sequel,' it's pronounced 'S-Q-L' -- "Structured Query Language" used for RDBMS ops), so, yeah, Java is number one. And "Javascript" is a more limited, embedded "client-side processing scripting language." From the Wiki:
JavaScript is one of the three core technologies of World Wide Web content production; the majority of websites employ it, and all modern Web browsers support it without the need for plug-ins.
I'm still irked that the legacy Netscape "Visual Javascript" went away. Call me lazy: I suppose I could write my blog in explicit HTML code (and, I have to drop down "under the hood" episodically into the html code to fix stuff in the blogger.com platform when the vexing authoring system bugs bite), but, nah.

In my Kindle book stash:

JavaScript is an OOP scripting language which mainly used in Web programming. It is responsible for making web pages interactive; in simple words “it tells web page what to perform”. Like HTML defines the contents of the web page and CSS defines the layout, JavaScript make that web page work properly. JavaScript programs are the set of instructions which are executed in the order they are written so while coding, we should take care of the logical sequence. Do not get confused between Java and JavaScript, they both are technically different languages in respect of their design, however their standard libraries and syntaxes are same.

Goddard, Nick (2016-08-08). Javascript: Beginner to Expert with Javascript Programming (Javascript, Javascript Programming, Javascript for Beginners, Java, Java Programming, Java for Beginners,) (Kindle Locations 65-69). Kindle Edition.
Only $2.99, btw. One of these days I'll get off my butt and get up to speed on JS. I still have some ideas I'd like to code and promulgate -- mostly stats-related.

So, back to the foregoing bar chart. Yeah, focused acquisition of competency in those languages will obviously serve you well (Python and Ruby are particularly in vogue out here around Silicon Valley -- and, let's not forget the Big Data "Hadoop"). That's what this out-to-pasture (3GL/4GL) old coot would be doing nowadays. My faded chops in BASIC, FORTRAN, legacy C, xBase, Oracle SQL (running atop an SCO Xenix network I once installed for a LIMS project back in Oak Ridge in the 80's), and SAS and Stata (which don't really count either), are pretty much "Get-Off-My-Lawn!"**
I don't know about their current platform, but back a bit over a decade ago when HealthInsight sent me to Massachusetts for eClinicalWorks implementation and end-user workflow training during the DOQ-IT era, the eCW staff told me that their system was written in Java utilizing CSS (Cascading Style Sheets).

PHP: The excellent open-source (and ONC-certified) electronic medical record system OpenEMR is written in PHP. I've spent a good bit of time skulking about down in the bowels of that system.
** I'll just also note that, while coding syntaxes and language features (e.g., "objects") have certainly changed and progressed since my ancien "developer" days, fundamentally, programming languages remain molecularly comprised of "KEYWORDS" (commands and black-box functions), "ARGUMENTS" (modifiers to the foregoing), and "OPERATORS" (both mathematical and Boolean/"conditionals"). Ya gotta start somewhere.
A snip of my before-indoor-plumbing late 80's code, from my Oak Ridge radiation lab days:



That's from one of my "IQCstats" ("Internal Quality Control," pdf) subroutines, ITAS 1991 St. Louis lab install (full 17 pg subroutine source code pdf here).

Those were fun times.

UPDATE: "LEARN JAVA PROGRAMMING IN 30 MINUTES" 

LOL. The hell with "12 weeks."


I got to looking around at some online Java tutorial stuff. Ran across this (above):
In this Java programming Tutorial I'll teach you all of the core knowledge needed to write Java code in 30 minutes. This is the most popular request from everyone.

I specifically cover the following topics: primitive data types, comments, class, import, Scanner, final, Strings, static, private, protected, public, constructors, math, hasNextLine, nextLine, getters, setters, method overloading, Random, casting, toString, conversion from Strings to primitives, converting from primitives to Strings, if, else, else if, print, println, printf, logical operators, comparison operators, ternary operator, switch, for, while, break, continue, do while, polymorphism, arrays, for each, multidimensional arrays and more.
Pretty manic. Loved it. I am reminded... Back in 2004 my wife and I went to the UK and France on vacation. While in London we went to a comedy play entitled "The Complete Works of William Shakespeare in 90 Minutes."

That's exactly what it was, too. It was hilarious.

So, yeah, there are significant Java et al differences from my old 3GL/4GL procedural/structured programming era, but, at root at lot of the concepts haven't change much. Logic is logic. Syntax and semantics are what they are.
__

So, ZIPCODE Wilmington. Legit?


"1,200 hours? At 12 Grand, that's only ten bucks an hour. Totally reasonable. Of course, only 480 of those 1,200 are instructor-led class time. Still, $25/hr for instructor time, utterly reasonable.
Classes run from 9am-5pm, 5 days a week. But expect to spend as much time as you can at our facility, interacting with mentors, and learning with other students. Learning Java is not easy, and you’ll need the extra time. This is an immersive program.
So, in total, twelve consecutive 100-hour weeks? (They're a bit vague on this.) Well, that alone (assuming curricular validity and instructor competency) would prep you for Silicon Valley startup duty, where reports of low-dose psychedelic and "neuroceuticals" performance enhancement/stamina use are common."Work-Life Balance" doesn't apply out here.

BTW, I clicked on their "alumni / testimonials" link.
 "This video is no longer available because the uploader has closed their YouTube account. Sorry about that." 
Oops. I'd be fixin' that ASAP. We'll see. I emailed to apprise them. No response thus far.

Basically, I have two concerns/questions. [1] certification of post-training newly-minted "software engineer" alumni competency, and [2] stuff related to the possibly yellow flag "financing is available from a third party lender" thing on the website on their "scholarships" page. Maybe the latter is just an itch from my 2000-2005 risk management stint in Subprime.

The proliferation of independent "trade schools" runs the gamut of late. e.g., in 2015 I wrote about proprietary training course offerings in "genetic counseling." See "Personalized Medicine" and "Omics" -- HIT and QA considerations.

Again, ZIPCODE Wilmington, may be totally above-board and a great value (unlike the "neurobabble" crowd). At least it's a instructor-face-time bricks and mortar campus operation, unlike the tsunami of dubious online course offerings we see hawked every day.

A bit of digging doesn't yield much. e.g., from the notoriously tight-lipped Delaware Secretary of State's Corporate Filings office:


There are actually two listed, same address, one an "Inc" and one an "LLC." No info as to the officers or what type of non-profit entity they are (IRS lists 28 types of 501(c) "non-profit" organizations).

A search of my Guidestar account turns up empty (other than listing 2015 revenue of $1,184,716 and assets value of $571,905). They've apparently yet to file a Form 990.Their IRS EIN is 47-3853334.

UPDATE: I found their 2015 IRS 990 (pdf). They're a 501(c)(3) (meaning contributions to them are tax-deductible).


They claim to have graduated 16 students in 2015, all of whom are now employed in "full-time, paid technology roles" (pg 3, Part III, line 4a) at ~double their prior pay rates. They only collected $14,000 in tuition, so nearly all of the students were subsidized in one way or another. The Officers/Directors serve pro bono, and "management" was apparently outsourced, to the tune of $62,136. Part VIII ("Statement of Revenue," pg 9) lists what has to be "seed money" grants. "Salaries and wages" $312,504.

Aside from a couple of minor curiosities, nothing untoward emerges.

A WHOIS domain name search finds this:
Whois Lookup for zipcodewilmington.com
Zipcodewilmington.com registered by NETWORK SOLUTIONS, LLC. for Stewart, Jim on 10-02-2014. Stewart, Jim renewed on 04-03-2015 until 10-01-2019.
Jim Stewart is CEO of a Wilmington DE company accessible online at "epicresearch.net." Below, I originally missed this (didn't scroll down far enough), but he's the President of ZIPcode Wilmington.


Why bother ferreting around with stuff like this? Recall my 2014 look at HL7? Nothing personal, just checking, particularly when I encounter vague stuff that begs further questions.

UPDATE: Some effusive "alumni" reviews at Switchup.org.

And, a testimonials marketing video I grabbed from Twitter:
"...Boot camps are the new form of education that's really taking off."

All pretty interesting, I have to say. A few more questions I have: [1] the "pedagogy." Is the coursework / methodology "proprietary"? (After all, they do have "boot camp" competitors, and CS departments in established academic institutions could easily invade their turf.) [2] What of the vetting of the instructors? [3] Also, what of the vetting of incoming students? e.g., pre-testing" to determine what knowledge and skills they bring to the table? Bet the answer there is 'no,' but there is vague talk of "if you qualify." They say that class size is 30 students, culled from 250-300 applicants. The criteria for "making the admissions cut" are not clear. (A credit card with sufficient line and valid expiration date?)

So, that all comes down to $30,000 a week gross revenue. Assume 52 weeks of classes. Gross annual revenue potential, then, of $1,560,000 (unless there are multiple concurrent classes going on, which does not seem to be the case). Those are pretty small potatoes. When you look at their Board, Advisory Board, Steering Committee, and Partners, you gotta assume they have larger objectives.

Hmmm...


LOL. Will it (in VC-speak) "scale?" From the website:
As entrepreneurs and venture capitalists, our founders saw San Francisco’s and New York City’s success spurring their technology economies and putting individuals to work. Coding schools were a large part of the equation, but few high-quality coding schools existed on the East Coast. Even fewer were training for the types of coding jobs available in most major cities (Java). They decided to build a coding school from the ground up. By leveraging the strong demand of area corporations for software developers, they created one of the strongest private/public/charitable partnerships possible.
"Scalability" seems to be hemmed in by the bricks and mortar content delivery model. A growth path would seem to infer (at least partial) online course delivery. But, maybe that's not their motive. Maybe relatively modest, incremental expansion of their Wilmington "campus" is all they envision (update below).

Recall from my prior post on Uber, that one of the ECON knocks on them is that "they cannot 'scale'."

One thought that occurred to me: how about taking on client projects, as both a revenue generator and a way to expose students to actual useful commercial "apps" development (I have a couple that I would pay for in lieu of dusting off my rusty, dated chops)? By way of rough analogy, in order to become a certified Six Sigma Black Belt, you have to both pass a BoK cert exam ("Body of Knowledge") and participate in an actual production improvement initiative.

e.g.; from my professional society, ASQ:
The Certified Six Sigma Black Belt is a professional who can explain Six Sigma philosophies and principles, including supporting systems and tools. A Black Belt should demonstrate team leadership, understand team dynamics and assign team member roles and responsibilities.

Black belts have a thorough understanding of all aspects of the define, measure, analyze, improve and control (DMAIC) model in accordance with Six Sigma principles. They have basic knowledge of lean enterprise concepts, are able to identify non-value-added elements and activities and are able to use specific tools.

Review the different Six Sigma belts, levels and roles.
Note: Six Sigma Black Belt certification requires that you complete at least one Six Sigma project and submit a project affidavit.
Also, I recall that some of the best dental work I ever had done was at the UAB School of Dentistry in Birmingham in the 70's. No dental student/resident wants to screw up under faculty scrutiny.

Just some thoughts.
One last observation: I spend a good bit of time episodically mingling with the Silicon Valley digerati crowd (including developers/coders and venture capitalists) during the course of my conference coverage for the blog. The peeps I routinely interact with are scary smart. The coding talent here in the Bay Area takes your breath away.
ROI, STUDENTS' PERSPECTIVE
"Numbers don't lie. 92% of our students are placed within 3 months of graduation earning an average of $62,942"
Posted by their office manager on LinkedIn. OK, take that at face value for the sake of argument. The paying-full-freight 3-month post-graduation "expected value" would be 0.92 x $62,942 = $57,907 year 1 avg compensation, for a rough ROI of $57,907/$12,000=483% (somewhat less had you financed the $12k tuition).

Given the scandalously, criminally dismal graduation and job placement rates of the for-profit proprietary diploma mill "schools," this is golden by comparison.

If true. Google "DeVry" or "Corinthian Colleges" or "University of Phoenix" and "job placement rates."

UPDATE: I just ran across this also on LinkedIn:
Zip Code is growing and looking for new instructors!

Job Title: Java Boot Camp Instructor
Location: Positions Available in both Wilmington, DE and Glasgow, Scotland
Employment Type: Direct Hire or Contract
Scotland' eh? Nice.

ZIPCODE Wilmington. Bears watching.

UPDATE
Why HackerRank’s CEO thinks companies have got tech hiring all wrong
Skills over pedigree, says Vivek Ravisankar. It's a notion that schools like Zip Code Wilmington would welcome.

By Joey Davidson
...“The tech talent shortage is an issue no company can ignore,” Ravisankar explained. “By 2018 there will be 5.3 million open tech jobs in the US, with only 4.5 million developers to fill them.”

The HackerRank CEO thinks that this huge difference isn’t from a lack of talent, “rather, it’s that companies are still using traditional recruiting tactics that systematically overlooks great talent.”

“Businesses are all hiring from the same places and using legacy recruiting tools like the resume and LinkedIn, which prioritize pedigree, experience, location, and connections. This process is wrought with bias and overlooks a massive pool of talented, diverse and passionate candidates worldwide.”...
That's interesting, and, yeah, technical/"SME" chops (along with interpersonal skills) are what matter.
__

Broadly apropos of this post's topic, Dr. Carter, at his fine EHR Science site, has a new one up:
EHR Design: Unintended Consequences and Irreconcilable Differences

...Clinical software design and engineering
Clinical software design and engineering should garner much more attention within the academic informatics community. It is almost as if clinical software design and development are seen as a “trade” of sorts and not a proper intellectual discipline. We have many articles describing poor EHR usability. Yet, none takes the step of delving into the internal design (coding and architecture choices) to explain surface usability issues. Describing what is wrong is not enough, alone, to determine how to fix it. Nope, no more than describing the anatomic and physiologic consequences of cancer tells one what goes wrong at the molecular level or how to cure the disease.


Curing cancer requires research into genes, drugs, drug delivery systems, etc. Creating better clinical systems requires research into computable process representations, data transformation algorithms, data structures for clinical concepts, formal workflow analysis methods, and object models, among other things.  This work has been abandoned to EHR vendors. I am sure that many of these issues were tackled when creating homegrown EHR systems, but where is that knowledge now? Why was it never put into books? Why so few journal articles? Only recently has EHR design been of academic interest–one good thing that came out of SHARP. Even so, internal design and software architecture articles are underrepresented (rare) in informatics journals.

As increasing reports of security breaches, safety concerns, usability complaints, and other unintended consequences demonstrate, current EHR systems need to improve. Let’s start by agreeing that clinical care software systems are complex, and safe, reliable, usable systems require design expertise and sound engineering practices. Millions of lives, including mine, are covered by EHR technology, and every patient should have some assurance of the quality of those systems.  

When complex systems affect millions of lives, they rightly become the focus of scientific and engineering investigations. EHR systems have been around in some form or other for decades. Why is there no Textbook of EHR Design and Development or a manual of Clinical Software Engineering Principles and Practices? Where are the journal articles? We have civil, aerospace, nuclear, electrical, and many other types of engineers. Still, somehow, it is assumed that a complex clinical system is just a matter of a team of programmers, a database, a GUI, and a good UCD process.  

Clinical software requires much more in the way of formal scientific and engineering support. Marketplace whims and feature requests will not accomplish this. Until building clinical care systems is viewed in the same light as building commercial airliners or nuclear reactors, unintended consequences will increase, usability research will be difficult to compare, and ransomware will continue to be profitable.
"...somehow, it is assumed that a complex clinical system is just a matter of a team of programmers, a database, a GUI, and a good UCD process."

Tell it, sir. Designing/"engineering" effective clinical systems is orders of magnitude more difficult than coming up with the latest "sharing economy" UberFishTacosDelivery app.

BTW, included in the above bar graph is "IOS." I assume by that they mean "IOS/Swift." Dr. Carter is all over it. See his myriad posts going to Clinical Swift: Explore clinical software design and development with Apple Swift!
Swift is a modern programming language created by Apple to make application development simpler. Version 2.0 of the language is out and adds much needed error trapping/exception handling capability. Swift is similar to other C-derived languages, and is easy to read for anyone familiar with Java or PHP...
See that latest Swift stuff at Apple.
Swift is a powerful and intuitive programming language for macOS, iOS, watchOS and tvOS. Writing Swift code is interactive and fun, the syntax is concise yet expressive, and Swift includes modern features developers love. Swift code is safe by design, yet also produces software that runs lightning-fast.

HEALTH 2.0 UPDATE

HEALTH 2.0 11TH ANNUAL FALL CONFERENCE
October 1st - 4th, 2017
Santa Clara, CA


TRUMPCARE UPDATE


The gnashing of DC political teeth this week with the release of the draft "Repeal and Replace" AHCA bill (and its subsequent contended CBO score report) is a depressing sight to behold.

UPDATE

The always-provocative Margalit Gur-Arie has a new post up.
RSVP to an Invitation from Steve Bannon

Steve Bannon, the White House Chief Strategist and nationalist lightening-rod extraordinaire, has made his public speaking debut at the Conservative Political Action Conference (CPAC) a couple of weeks ago. I’ll leave the dissection of his remarks to people who get paid millions of dollars to spin things, but at the very end of the interview, Mr. Bannon invited the audience, and by extension the American people, to help the Trump administration in a very peculiar way: “We want you to have our back... but also and more importantly, hold us accountable. Hold us accountable to what we promised. Hold us accountable for delivering on what we promised”. Well, Mr. Bannon, here is my RSVP to your most gracious invitation.

I would like to hold you accountable for the way you are handling, or rather mishandling, the debate around Obamacare, and health care in general. As far as I can tell, and by your own admission, your job Mr. Bannon is to implement the President’s agenda as presented to the American people for consideration during his campaign. I have watched approximately 90% of candidate Trump’s rallies, all the debates and all the interviews, because as a bleeding heart liberal, I had to be sure I knew exactly what I was voting for. What he promised, what you all promised, was to protect Medicare, Medicaid and Social Security and you made it crystal clear that Mr. Trump was the only candidate (excluding the defeated Bernie Sanders) to commit to this trifecta of righteousness. I would like to hold you accountable for delivering on this promise in its entirety...
A self-described "left-of-Bernie liberal" who nonethelesss voted for Trump. She will come to rue that decision.

HEALTH TECH NEWS UPDATE
A Robot Ear Surgeon Drills Into the Future of Medicine

TECHNICALLY IT AIN’T brain surgery, but let’s just say you wouldn’t want to do a cochlear implant while sleepy or distracted. So it’s a good thing this surgery robot can’t be either of those things. It drills into the bone behind the ear, watching with two shining eyes. The bit passes just half a millimeter from the facial nerve, and another half a millimeter from the taste nerve, before entering the spiraling cochlea of the inner ear. Here a human deposits an electrode.

The first robot-assisted cochlear implant in a clinical trial, which researchers describe today in the journal Science Robotics, doesn’t just enhance a surgeon’s dexterity like the by-now-common da Vinci robot might. “We are interested in doing something with the robot that a surgeon is not able to do,” says study co-author Stefan Weber of the ARTORG Center for Biomedical Engineering Research. This thing gives surgeons superpowers, allowing them to “feel” through tissue by measuring how the drill bit’s force changes against bone or flesh. All that precision means, for one, removing less bone to get to the inner ear.

This thing should also make surgeons nervous. I mean, not this robot per se, but the vanguard it’s a part of. Because while surgeons are in total control of the cochlear bot, more machines are coming that will automate much of medicine. And that future will make for a potential regulatory—and public relations—mess...
Hmmm... See my prior post STEM update: get a "Handle" on THIS!

ELATION EHR NEWS
Best in KLAS report names Elation as top-performing, “stunningly easy-to-use” EHR for small practices

Each year, the health IT industry looks to KLAS, a leading health IT research firm, to recognize the EHR systems that are performing best in serving the needs of their customers.  The Best in KLAS awards recognize “the software and service organizations that excelled in helping providers deliver better patient care.” In 2017, Elation’s Clinical First EHR was recognized as a top-three, Best in KLAS EHR in the Small Practices category...
Kudos.

I first reported on them here: "Elation" and "EHR" -- a word and an acronym not typically found together.
__

ZIPCODE WILMINGTON CODA

Well, that was quick. Zipcode Wilmington just canceled their Twitter Follow of me.


No one ever responded to my multiple email queries. I guess it's thought that stonewalling me will make me go away.

CODA, 3/19

This morning.


Right. Hey, rookie programmer with 12 weeks of "boot camp" instruction under his/her belt, or "professional software engineer" in that time period? Same difference, right?

SAVE THE DATE

Join Health 2.0’s Free Webinar To Hear the Potential Impact on Health Tech from Repeal & Replace
I registered. apropos of the topic, see my prior post Rationing by "Price."
____________

More to come...

No comments:

Post a Comment