Touched upon compiler (internals and flags) in a separate post.
538 karma · joined November 15, 2011
Touched upon compiler (internals and flags) in a separate post.
"I felt a great disturbance in the Force, as if millions of professional developer voices suddenly cried out in terror and were suddenly silenced. I fear something terrible has happened."
I've read Dr. Dobb's for 30+ years, and it helped me move from a coder to programmer/developer to software engineer--while still retaining the hacker spirit. Each month, Dr. Dobb's, Sys Admin, et al were on my bookstore shopping list, to be read and re-read over the next month.
It will be missed.
My recommendation is simple:
Unless you are a CPA, actuary, lawyer or some other bureaucrat, don't move to DSM. In fact, I've advised many people to move away.
The reasons are simple.
While there are both tech and brick/mortar startups in DSM, the scene isn't huge and it does have life-span issues. Startup City closed up shop this fall after 2-3 years. Gravitate--the co-working spot mentioned in the article--is the latest in a series of attempted co-working spots over the past several years.
Regular employment options are a huge concern too. DSM is government, insurance, mortgages and banking, with a handful of ag and convenience-store companies thrown in the mix. The common refrain I hear from old colleagues and family working for insurance/financial services companies is how unsatisfied/miserable they are, and how they wish there was someplace better to go.
The marketing, advertising and publishing companies shouldn't be forgotten either. (Hint: re-read that last sentence in context of the article.)
Another huge thing people don't often consider is airfare costs. DSM International traditionally has had very high airfares--so high, many companies have sent their employees to Omaha or Kansas City to catch flights, because it's more cost effective--even with mileage and hotel bills.
Ignore the hype. There are much better places to live and work than Des Moines. I now live and have my own business in the Minneapolis/St. Paul (Twin Cities) metro, and couldn't be happier. For everything the article states about Des Moines, MSP is several orders of magnitude better.
That said, I'm also OpenBSD fan, using it as a "hardened" (Internet facing) production server, with minimal ports, for things like Postfix, DNS, etc. OpenBSD is also well used in network management/control as a router, firewall, etc.
Each has its use case, and does quite well in them.
The plan now under consideration would separate broadband into two distinct
services: a retail one, in which consumers would pay broadband providers
for Internet access; and a back-end one, in which broadband providers
serve as the conduit for websites to distribute content. The FCC would then
classify the back-end service as a common carrier, giving the agency the
ability to police any deals between content companies and broadband providers.
At first glance, this looks bad. Really, really bad.The Internet was based upon the concept that each node would be both a producer and consumer of content. And as speeds for the end-user have increased, truly becomes feasible (especially as FTTP becomes more common).
What this proposal does instead is play into the hands of the cable industry and their view of the Internet is a broadcast mechanism, and the consumers as primarily passive consumers and not really producers or highly interactive.
What's really needed is more competition. Unfortunately, the only entities with the capital which can provide that competition are munis. Private investors and other entities don't really seem to care that much about this.
First, read these two articles. They're older, but provide some answers into how others have defined the role. You might be able to pick and choose to further define your role:
http://www.cs.princeton.edu/courses/archive/spring12/cos448/...
and
http://www.brixtonspa.com/Career/The_Role_of_the_CTO_4Models...
Second, I think right now it's best to look laterally into the business world as to your role. You are essentially the "CEO" of your company's technology realm. The VP of Engineering is the "COO". Look and talk to your business-side counterparts on how they handle their roles.
Your job is to work with the business to develop both business and technical strategies, and oversee the development of the technical architecture to get you there. To monitor competitors technology. To monitor emerging technologies. To prototype. To provide business and technical analysis and advice for M&A's.
The VP Engineering's role is to handle the day to day stuff. To be more tactical than strategic.
In the end, the role of CTO is still ambiguous, meaning different things to different companies. And it's changed in the past few years--I'd never heard of developers being in the CTO role until maybe five years ago or so--and it will continue to change.
When I emerged from a deep stint with a company (2000-06), the age distribution had shifted dramatically to people in their 20s. Not only were many of the old timers gone, I was finding myself to be the old timer.
What had happened to all my old timers? Many didn't survive the dot-com bust or recession of 01-02. They either outright retired or moved to different careers; some survived, but moved on anyway. Some had died.
Those that remained in technology went three different routes. Management, consulting, found a place in a company they like and haven't budged.
Personally, I started my own consulting business which I enjoy. Although nearing 50, I do feel some envy for the guys who've found a nice small/mid-sized company to settle down in. They may not be as well compensated, but they are often "IT Director/VP" (where IT is 3-8 guys), are still hands-on, get to have fun, and not have as much stress.
The experience I've had with outside recruiters in the past 10 years is atrocious, though. All they're looking for is warm bodies to toss at a company, and hope one of them sticks. No or limited experience--they still want to present you...after modifying the resume you've sent them in Word.
Today's outside recruiters are inexperienced in and ignorant of the field ("Your last job was a fitness trainer??"), and borderline unethical.
I'm still surprised so many of them are in business.
First, I work with various companies, many of which have remote work options. These options range from a couple days/week remote, to 100% remote. What I'm hearing from employees at the companies which have remote work implemented is they don't want to work for a company which doesn't offer remote work at the same level or better as their current employer. And the more time spent working away from the office, the more adamant the employees are about this.
And these employees aren't only technologists either. I'm hearing the same thing from accounting, marketing, etc department employees who get a taste of remote work, and really don't want to go back to butts-in-seats. And their reasons are similar to the tech side--productivity goes up, no commute, fewer meetings and annoying co-workers.
Second, there are very few technical reasons (I won't say none) that a company can't enable remote workers and save a ton on real estate costs. Skype, Google Hangouts, Facetime and even WebRTC (even in it's current state), show that individual/team-based video collaboration is possible over commonly available 20-50 Mb/s connections. VoIP enables an employee's "desk phone" to follow them anywhere (I was doing this with a headset/laptop/VPN in 2001). Chat is heavily used, even in the "business side" (accounting, etc) for traceability.
The main technical problem is still reliable bandwidth. Even though 20-50 Mb/s suffices, 100 Mb/s or even 1 Gb/s active fiber would be better, to achieve corporate LAN-like speeds at home. Around this region, FTTP-enabled homes are selling like hotcakes.
Finally, with the advent of "The Cloud" or just plain old-fashioned datacenter hosting, there's really no difference between working in a cube or working from home. Everything's already remote. In this sense, many corporate employees--with systems and co-workers located in another building/city/country--have a huge head start on this compared to start-up employees.
While a great list, the mistake is being made of assuming disruptive startups (through technology, business processes, or both) will solve problems in several of the sectors. Some being Healthcare, Pharmaceuticals, Energy, Transportation & Housing, Telecommunications, and--most of all--Government.
It's not because smart people haven't developed solutions to the problems they see in these sectors. It's that government--through policy and/or bureaucracy--often prevents those solutions from being implemented.
For example, I have family who are in the pharmaceutical industry. PhDs and all. The amount of money spent on the bureaucratic steps to obtain government approval (FDA and others) to bring a new drug to market is the vast majority of development costs.
I won't even go into my experiences working with various levels of government on technology projects. Suffice it to say, never again.
You want great, efficient solutions to hard problems? Get government out of the way. Government involvement hinders progress, and makes what progress there is extremely expensive.
Paying bills? Crazy little pieces of paper called checks.
Contacting your phone company? Paper bills, or just write it down. Or, wonder of wonders, dial 611.
Need a plumber? They still have these wonderful books called The Yellow Pages.
How in the world did we ever survive prior to the Internet becoming more mainstream just 12-14 years ago? Now sit down and let me tell you about the prehistoric times called the 1970s and 1980s...
And get off my lawn.
With 27 years of Internet access of one form or another under my belt, the same thought has been entering my mind the past couple of years. The first 11 years weren't bad, with dedicated access only in college computing labs or at work. Home was dial-up only, so restricted to e-mail, usenet, etc. Lots of time for reading.
But since broadband (DSL and cable) started becoming widely available in '98, my home-based non-connected leisure time has diminished. An inverse relationship with broadband speed, one could say.
Although I don't own a smartphone, their introduction and the cutting of the Internet wires has only exacerbated the distraction problem. Which is one of the two reasons I don't have one.
If I didn't run my business from home, I'd probably drop my connection too. And probably will the day I retire.
Good article is here: http://www.nytimes.com/2010/07/19/technology/19screen.html?_...
And farmers just are supposed to give this commodity away for free? An action which--whether done for free or for profit--might have some short-term benefits, but may run counter to their interests in the long-term?
Yeah, right.
A second problem is web-/app-based farm management solutions place at loggerheads two qualities of good farmers: 1) progressive use of technology to increase profitability; and 2)the natural resistance to tell anyone what they've paid for inputs (land, machinery, seed, fertilizer) and what they're being paid for outputs.
Farming is a business, and by giving out too much information, farmers risk being out-maneuvered by their competition. Whether the competition be another farmer discovering what's being paid for cash rent and offering $5/acre more, or a hedge-fund gathering up real-time planting and yield information to play the CBOT/CME.
On a personal note, I've been involved in farming for 45+ years. My dad 80+ years. When explaining taking the information about the farm and crops and giving it to a company, my dad--who's never used a computer in his life--just stopped me and said: "That information is a new commodity they'd be getting for free to take and sell, and we'll never see a penny of it. "
Something for farmers to consider.
"Looking at the data behind these comments, it’s
clear to see that the entire country is passionate
against net neutrality."
So the entire country wants "pay lanes" and "pay-per-site-access"? That said, I do agree with the sentiment expressed here: it is pretty amazing that a site that is really a nexus of high-tech Silicon Valley companies and figures -- quite possibly the most popular one in that segment -- still has downtime and a web interface reminiscent of the 1990s.
I actually like the UI. It's simple, doesn't use tons of bandwidth, and gets the job done.Over the past 30 years--even the past 15--automation of tasks which were once done by people in the lower-to-mid tiers of the middle class. Word processors have replaced secretarial pools. Robots have replace assembly line workers. Self-service web-sites have replaced data entry clerks. "On-line" (web, e-mail,etc) have replaced tellers, postal workers, etc.
I know I'm personally responsible (due to proposing and implementing automation projects) for replacing over 1500 people since 1995. Is this a good thing or a bad? I don't know. The Industrial Revolution killed off craftsmen, but created millions of other jobs. The question is, what will the Technology Revolution leave in its wake?
So before we start pontificating on taxes, social welfare programs, and ever increasing calls for "wealth distribution"--remember to look in the mirror and ask how many people's jobs have you eliminated today?
When they did ask how things were going business-wise, I got the nod from their husband. Turns out, they were also on the hook (co-signatories) for much of the start-up capital vehicles/loans/lines of credit.
Their money on the line, they own the company, IMHO.
Very wrong.
Different companies doing development (pure tech to Fortune level corporations) all have different requirements and environments. A small, fast-pivoting, ever changing start-up isn't going to need, want or have the time for all the detailed documentation a large, regulated Fortune X company will require.
That said, I think a knowledge of UML is beneficial to all levels, if just having a common modeling "language".
Start-ups can use selected diagrams (eg, sequence, deployment, component) to develop, work out and "document" the high-level vision, and maybe major bugs. Keep them light on details and flexible. Like a paper road-map, they show only the major things, and don't require much time to update.
Large and maybe regulated corporations (and even start-ups in regulated industries) will not only need, but require deeper levels of detail. Class, state and other diagrams. They get into the city-street level maps. But again, they can afford the levels of bureaucracy staffing (like "enterprise architects") required to maintain all the documentation.