Featured Post

The New E-Conomy

There is one thing that both our former president and the current occupant of the White House agree on…Amazon is bad for retail.

From President Obama:

Amazon and online sales is killing traditional retail, and what’s true there is going to be true throughout our economy.

From President Trump :

Amazon is doing great damage to tax paying retailers. Towns, cities and states throughout the U.S. are being hurt – many jobs being lost!

Beware the idealization of small-town charm. The classic example we always hear is that WalMart came to town and put the Mom&Pop Store out of business. There’s a lot of truth to that. The story that rarely gets told though is about the Mom&Pop Makers that never got a good product to the mass market because they couldn’t break into the retail chains. So they sold a few items at the Mom&Pop Shop, until Walmart put them out of business, and then Mom&Pop Makers went out of business too.

Amazon (and many other emerging players in the E-marketing space) are changing this dynamic completely. From Wired magazine:

And while online distribution and automation may present certain challenges to traditional retailers, they also create significant opportunities. In fact,almost half of retail sales on Amazon’s platform are from third-party merchants who have chosen to sell their wares online instead of (or often, in addition to) through brick-and-mortar stores.

Indeed, the democratizing effect of online platforms (and of technology writ large) should not be underestimated. While many are quick to disparage Amazon’s effect on local communities, these arguments fail to recognize that by reducing the costs associated with physical distance between sellers and consumers, e-commerce enables even the smallest merchant on Main Street, and the entrepreneur in her garage, to compete in the global marketplace.

President Obama, recognizing the advance of technology and how it will affect the economy, asks some questions that definitely make my conservative spidey-sense ping:

Which means we’re going to have to start thinking about where the jobs come from, and how much government involvement is there in the marketplace, and do we have a job-sharing economy so that everybody has work, because it turns out that work is not just about finances, but it’s about dignity and feeling like you’ve got a place in the world? You don’t have to work in order to have money, you could just have support from a company like låne penger. How do you pay for that? If more and more people are working in the service sector, how do we make sure that they’re getting paid enough? In addition to making an argument that, “If you want a better deal, then you better start unionizing and organizing, ‘cause otherwise you’re going to get screwed,” in addition to making the argument that if you’re in the service sector right now, you should be fighting for a higher minimum wage ‘cause across the board, everybody in the service sector is going to be better off ….

I absolutely hate any language that encourages workers to put their heads in the sand and hope someone will save them. In my own workplace, I work on a large hi-tech account that is trying to navigate a rapidly-changing market. The 400 employees that staff the account mostly seem to be hoping for the best. I gently tell my team to continue to develop their skills, to look for new internal opportunities and to not let optimism lead them to bad decisions. My mantra is, “Don’t let your career just happen to you…”

Where I always seem to diverge with liberals is on the level of government intervention they are ready to undertake on any given issue. I’m fairly progressive on things like job skills programs, Pell grants and WPA-style infrastructure programs but I’m rabidly conservative when it comes to unionization, make-work policies and living wages. My biggest fear is that liberal worries over a changing economy will cause them to interfere with an emerging e-commerce market that gives small-time creators the power to access global markets and grow their businesses in ways that were never dreamed of even 10 years ago.

Again from Wired:

Of course, technological and organizational change can disrupt people’s lives and livelihoods in unwelcome ways. But hasty regulatory “fixes,” which are among the most significant causes of sluggish growth (and thus job loss), are not the answer. Imposing laws and regulations to punish innovators and protect traditional jobs from the perceived threats of the future would stifle productivity, mandate inefficiency, and restrain progress…

It’s actually an amazing time to be in the business world, if you aren’t scared to look forward. Here’s hoping that our leaders start to figure out that preparing workers for this reality by arming them with solid choices and the necessary skills, is the best thing we can do for the future.


Associate Editor
Home Page Public Email Facebook YouTube Instagram 

Mike Dwyer is a writer in Louisville, KY. He writes about culture and the outdoors for Ordinary Times. He is also one of several Kentucky authors featured in the book This I Believe: Kentucky. Mike is active on Facebook and Instagram. He lives with his wife and daughters in the distant suburbs, at the place where neighborhoods give way to farms and forest.

Please do be so kind as to share this post.
TwitterFacebookRedditEmailPrintFriendlyMore options

89 thoughts on “The New E-Conomy

  1. I’m more than a little irritated by the sort of person who isn’t bothered by Walmart but is bothered by Amazon.

    Ok, now that I’ve vented, I think that we are in for a big transition and that the regions of the country that are less tech-oriented are going to have bigger problems than others.

    Countervailing this trend, though, is the “officeless employer”. My cousin works for such a business which has 19 employees nationwide, and meets up twice a year at site found over vrbo.com He just moved from the Seattle area to Boise, because it’s cheaper. He’s not a techie, he’s a contractor, and he’s doing business development for his employer, working the phone and internet daily. Boise isn’t exactly low-tech, though.

    I run a nearly officeless micro business. This stuff can work, and there is opportunity for all those midwestern craftsman to make really interesting things and sell them with the infrastructure that we have. But I worry that it will be slow to spin up, and they will have a hostile attitude toward this way of organizing themselves, thinking it associated with “coastal elites”.

    Report

  2. Got a bit of edit cleanup in the first few paragraphs.

    The 400 employees that staff the account mostly seem to be hoping for the best. I gently tell my team to continue to develop their skills, to look for new internal opportunities and to not let optimism lead them to bad decisions. My mantra is, “Don’t let your career just happen to you…”

    My wife’s group is being relocated from here to the Phoenix area. My wife is in the process of telling everyone and offering relocation to key employees they want to retain for the move, and giving everyone else an end date. She knows, with almost perfect clarity, who will easily pick-up and move on (either to a different position in the company, or to a new company) and has their letters of recommendation ready, and who will wail & whine & complain, etc. Those who can pick up and move on are the people who take control of their careers. Those who complain are the people who consistently act as if the company owes them a job, and have stopped even trying to develop their careers.

    Report

  3. “almost half of retail sales on Amazon’s platform are from third-party merchants who have chosen to sell their wares online instead of (or often, in addition to) through brick-and-mortar stores.”

    Speaking as someone who has direct experience of doing this: it’s not being done because Amazon is so great about doing it. It’s being done because Amazon is the ONLY way to do it now. Amazon has wiped out any small business whose model is being A Place That Has Stuff, because whatever Stuff you are looking for, Amazon has got it (and cheaper, too.)

    Having become the monopoly provider of A Place That Has Stuff, Amazon acts exactly like you would expect. In return for providing access to their customer base, Amazon dictates prices, shipping and inventory practices, advertising methods, language for product description, even what you do on other sites (there is a whole list of regulations for what prices you can use on non-Amazon sites).

    Report

      • Rather random: Anyone have any idea how to “return to sender” a package from overseas? I’ve got one shipped by DHL, but literally no idea how to say “Send it back, I didn’t ask for it and don’t want it”.

        The one via USPS was super easy.

        Report

          • No. It was the product of my wife leaving herself logged into Amazon on her work computer.

            Thankfully, it looks like someone was ordering stuff for themselves and not “Hey, let’s screw with someone!”. Most hacked accounts don’t just spend 100 bucks and ship the stuff to your address. (In fact, we’re about 90% certain it was a particular IT person who probably thought he was on his own profile).

            I’d just prefer to return the overseas package rather than junk it.

            Report

            • Ooops… and I get annoyed when I accidentally order something on my wife’s account (screws up my re-order and/or history searches)… and that’s a shared Prime account.

              Report

        • Yeah, based on anecdata from stories of long time e-bay users they went from ‘for-profit on line flea market’ to ‘amazon when amazon was still doing mostly books’ but without a solidly consistent fair way of mediating disputes between buyers and sellers, thus alienating both small retail operations and customers. (And the for profit flea market aspect has been undercut by the ubiquity of Craigslist)

          Report

    • My company, which is a top-5 logistics provider, is now getting into the e-commerce business. And we’re not the only ones. There is even talk, of Walmart doing it. So hopefully that will provide much needed options for sellers.

      Report

          • Actually Walmart for a number of items can meet Amazon’s pick it up in 20 mins. Have the item in the store and do like they do for groceries and other things in the store and have the items at the service desk ready to pick up. (Won’t work where the Walmart stores are not, i.e. the east, but then Amazon won’t do that business where a lot of Walmart stores are in small towns) I just got a flyer in the mail saying that the local Walmart now hosts a FedEx version of the UPS store for example. Walmart has always had ship to store, but has not integrates Sam’s club into the process, for many items in bulk sams club has cheaper items, but its 60 miles to the nearest Sams Club. Note that Walmart is in the process of integrating Jet.Com into its eCommerce business as well.

            Report

    • Conversely Amazons policies give the shopper some assurance of a properly conducted transaction. Ebay for a while at least had a problem with products not being shipped by those putting auctions on. So instead of looking at it only from the vendors point of view also consider the customer. (It is largely the same reason a lot of chain restaurants came about a predictable encounter)

      Report

  4. My biggest fear though is that liberal worries over a changing economy will cause them to interfere with an emerging e-commerce market that gives small-time creators the power to access global markets, and grow their businesses in ways that were never dreamed of even 10 years ago.

    For whatever it is worth, I don’t get any sense of this from reading lefty sites. There is no great love for Amazon, but neither is there for the older model of big box stores. And really, I don’t think many people believe ecommerce can be put back in the box, even if they wish it could.

    Report

  5. I dunno. I’ve had my gripes with Amazon (and bigger ones with wal-mart, though that’s mainly because of how it seems to encourage people to behave in its stores, and also its policy of only carrying the brands they can aggressively lowball on wholesale price, even if there are better brands out there)

    but living in a small town with almost no retail? I don’t think I could live happily here without e-commerce. The nearest bookstore, except for a few shelves of “general reading” in the campus bookstore (and a now-defunct paperback exchange) is an hour’s round trip away. I can usually get a book faster through Amazon 2-day prime than I can make the time to drive down there – provided they even have the book in stock, which is uncertain for many older titles.

    I like supporting small businesses when I can, but I admit a lot of those “small businesses” are online yarn-sellers or used-book merchants or whatever and they are in Idaho or Massachusetts or somewhere – there is nothing in my town.

    I’m told there USED to be more retail – but it died out long before e-commerce; when the mall opened a half-hour away and most people started owning cars, they all decided they wanted to drive to the mall – which is now itself nearly defunct.

    I dunno. People in an area where retail always was thriving up to about five years or so are quick to slam e-commerce, but for those of us living in so-called BFE it’s a godsend. It’s like the old Sears catalog but you don’t have to wait six weeks or more for your order….

    That said: having to use Wal-mart as one’s primary grocery store still sucks. There is a better bigger grocery store I like (a Kroger’s), but again, it’s an hour’s round-trip away.

    Report

    • You have touched on one of the downsides of WalMart. When the store being displaced is a crappy general merchandise store, WalMart coming into town results in an upgrade for the consumer. There are other issues with local money going out of town and the like, but the truth of the matter is that a lot of those local businesses weren’t actually all that good. On the other hand, more specialized businesses often were. They would often carry a wide range of quality within their specialty. Want cheap crap? They had that. But they also had the good stuff. WalMart as a matter of company policy doesn’t carry the good stuff. At best they have the middle range, and you can’t be too sure even of that. They might have strong-armed a reputable supplier to produce cheap knock-offs of their own product.

      E-commerce has a different dynamic. The glory of Amazon in its early years was the depth of its catalog.

      As for small towns, here in rural Maryland there is a clear pattern of defunct towns. A hundred years ago they each had a small but viable retail economy. They might have fifty years ago. But as soon as people had cars, it didn’t make a lick of sense to shop at the dinky local store when you could drive five or ten miles to much better stores. Now these defunct towns still have their two churches and maybe a fire station, and the houses are close together, but there is no local economic activity whatsoever.

      Report

      • I keep asking where the “better off” people in my town grocery shop. (I am one of them, i guess).

        the answer seems to be: some don’t mind driving to Dallas (I will do almost anything for good food, but I won’t do that); the rest seem to just put up with Wal-mart and its perpetually half-spoiled fresh produce.

        E-commerce is great but it is not great for food unless you are willing to pay nosebleed premiums for the “specialty shipping on dry ice” and the like. I might do that for a rare treat of wild-caught salmon; will not do that for weekly milk and spinach purchases.

        What gets me – and I guess this is typical of parts of the American west? – people don’t blink at the idea of driving an hour’s round trip for something marginally more special than what is in their town. Having grown up in the upper Midwest in towns that were mostly self-contained, I just can’t get used to that.

        Report

        • filly,
          Wait, dallas is west?
          I’m up here in lil’ ol’ Pittsburgh, and we get WV traffic at my local Costco. That’s two hours distant.

          Now, I tell you this… they do it 4 times a year, and they get better meat and spinach for the trouble (not milk, that’s something you’re gonna get local or you’re gonna get nonfat)

          Report

          • It’s west of everywhere I’ve ever lived before this. This is my first time living west of the Mississippi.

            I can’t cope with the city traffic (super aggressive drivers) in the Dallas environs. If I had someone to drive me, I’d do it, but I just can’t tolerate lane-jockeys and people who will cut you off with 6″ of clearance.

            I’ve never been inside a Costco. Or a Trader Joe’s. Or a Whole Foods. I have friends online who live in big cities and they can’t quite understand why I can’t get certain things….it’s called City Privilege.

            Report

            • I’ve always liked the stories told by the NASA image on this page. You have to get well west of Dallas before you get to the real empty stuff. Out there, a majority of the area is probably more than an hour from a grocery. OTOH, the vast majority of the people are within an hour of multiple groceries — the Census Bureau’s West and Northeast regions are tied for highest percentage of non-rural population. It is possible that by 2020, the West will become less rural than the Northeast by population — the non-rural parts of the West are growing at a frantic pace, and many of the rural areas are actually losing population.

              From my house in the Denver ‘burbs I know multiple places where I can get properly aged prime beef. There’s a whole supply chain from small ranchers to small slaughter houses to custom meat markets here. Not necessarily the exact cut I want today, mind you. Whatever happens to be in the locker today, or exactly what I want next Tuesday.

              I’m not nearly a good enough cook to bother with prime, though, and the local Kroger chain will sell me unaged choice.

              Report

      • Yeah QFT….

        I lived in a small town (@ 5000) folks growing up. There was a two block north-south & East-west strip. Farming and ranching town, a bank or two, and not much else. Sure, we could go to the local shops and have a small choice of options, or we could drive 2 hours to Portland to the NEW NEW CLACKAMUS TOWN MALL. OMG OMG is got so many store, and cool stores. All the cool kids, and the kids with parents that had some money, shopped in Portland.

        I recently went into a book store and was browsing the Sci Fi. Nothing there I recognized. All the authors I wanted to read were not carried. No one I like is writing new stuff. Niven, Pournelle, Heinlein, and a few others no longer take up shelf space. Online is much more convenient, and more importantly searchable! Also, the reviews are helpful. You don’t see that at Walmart.

        Report

        • For backlist fiction, ebooks are even more convenient. There are some things ebooks are not good for, but for recreational fiction reading, they are great. Want to re-read Ringworld? You can have it downloaded on your reader in a matter of seconds for under six bucks.

          Report

          • Yah…I just have a problem with them. I really like reading books. And, last I checked, there are annoying TOSs. A book’s a book and doesn’t change and will always be the same book and it won’t “disappear”.

            And I’m a bit of a late adopter :)

            Report

            • The TOS issue varies wildly. On the other hand, Amazon is the vendor with the biggest TOS issues, as well as the largest selection and greatest convenience. so here we have a dilemma. In actual practice, for the vast majority of normal use TOS and DRM aren’t really problems. You pay your six bucks, download the book onto your reader, and read it. If you want to re-read it five years later, you still can. If you no longer own the original device, you still have the book in your account and can download it again. I get the objections to the TOS, but they are more metaphysical than practical.

              There are certain classes of books where I still buy in paper. Anything where pictures or tables or diagrams are important; books where I might want to flip back and forth, with my fingers stuck between the relevant pages; books where I might want several open on my desk at the same time; and books I care about having twenty years from now without worrying about format rot. This leaves a lot for the ebook: most recreational reading, both fiction and non-fiction outside my specialty.

              The advantages are portability and readability. My eyes aren’t what they used to be. I was finding casual reading increasingly difficult. The Kindle was a game changer. I am reading more now than I have in years. The key, whether Kindle or some other reader, is the display technology. There are readers that are actually small tablets suitable for surfing the net and watching videos. These aren’t actually all that great for reading text. The other kind, with e-ink, is easy on the eyes, does just fine in either low or bright light, and has low power requirements. I think a lot of people who try ebooks and don’t like them tried the kind maximized for Minecraft rather than for reading books.

              Report

          • Six bucks raises the question of how much old fiction should be worth. With slightly more effort, if you know where to look, you can (illegally) download the book for free.

            I occasionally wonder about how things get online. A friend of mine wrote a $120 textbook. A month after it was published I showed her the PDF file I had obtained (illegally) online. It was a byte-for-byte duplicate of the final file sent from the publisher to the printer.

            Report

              • Not a galley, the actual final print layout. She pointed me at a subset of her final changes, and they were all included. I checked a number of complex pages against a printed copy and they were perfect. Given where I obtained it, I suspect actual Russian hackers of having a backdoor into the textbook publisher.

                Report

            • I am at that happy stage of life where I can spend six dollars on a whim. That I could get the same item illegally for free really isn’t the point. I also don’t shoplift from stores, even when I am sure that no one is watching.

              The more interesting question to me is the price of newer fiction. I read some writer’s blogs that are aimed at the self-publishing crowd. There are some weird qualities. There are a lot of discussions about pricing. They seem to start at a couple of bucks and go down from there two 99 cents, with the occasional period of free as a marketing tool. So I see comments like “This book was recommended to me but when I looked it was ten dollars: screw that!” It all came together when I realized that the entire community is built around disposable genre fiction: brain candy to wile away a couple of hours. What is that worth? Not that there is anything wrong with brain candy fiction, but just as with real candy it isn’t great as one’s staple diet.

              Report

      • At the limit which you see in some of the very low populated counties in Tx and NM among others is just the county seat as the only village in the county. Partly this is of course because the county seat does provide some jobs, both for folks working for the government such as sheriffs deputies county clerks as well as at least a minimal medical presence, as well as some title companies and lawyers. (Plus in general a place for visiting lawyers to stay while trails are ongoing as well as a couple of restaurants (in tx that might mean a dairy queen), plus a couple of convenience stores with gas pumps.

        Report

  6. OP:

    My biggest fear though is that liberal worries over a changing economy will cause them to interfere with an emerging e-commerce market that gives small-time creators the power to access global markets, and grow their businesses in ways that were never dreamed of even 10 years ago.

    TFA:

    hasty regulatory “fixes,” which are among the most significant causes of sluggish growth (and thus job loss), are not the answer. Imposing laws and regulations to punish innovators and protect traditional jobs from the perceived threats of the future would stifle productivity, mandate inefficiency, and restrain progress just as readily (and just as sensibly) as would hiring laborers to dig a canal with spoons instead of backhoes.
    Instead, we need sound, compassionate policies targeted at empowering the displaced to acquire the education and skills to succeed in ever-shifting job markets—retail and otherwise. Business accelerators, for example, are among the initiatives that have proven successful in stimulating employment. A host of other ideas, ranging from some form of universal basic income to Trade Adjustment Assistance, may offer the potential for transitional aid aimed not at thwarting economic dynamism, but at helping the human workforce to adapt and evolve.

    As a matter of theory, the idea of government removing regulations that stifle job growth is very appealing to me. It’s a foundation of why in my younger days I was a Republican and believed that the GOP offered better economic policies. In my middle age and with the benefit of a legal education, I wonder, “What are these regulations, exactly?” I’ll certainly still allow that any one regulation (or rather, “set of regulations” because they tend to be rather intricately-crafted) might be well-intentioned but have an unintentionally depressing effect on economic activity.

    But I also see that a lot of regulations are implemented for policy reasons other than stimulating economic growth, and that this is a policy choice made through the democratic process. The voters and their representatives have decided that economic growth is not the only, or even the highest, priority. Or maybe they have, and it’s up to someone (almost by default, a court, since elected officials in practice are hugely reluctant to do this) to balance them against one another to achieve some sort of Pareto optimum of unintentionally conflicting policy objectives.

    The classic example I encounter are CAFE standards. By “eliminating regulations” with respect to automotive manufacture, do we mean “relaxing CAFE standards”? If so, we’re making a policy choice to accept a higher level of environmental degredation in exchange for cheaper cars. Don’t mistake me: I fully realize that there necessarily has to be a balance between environmental degredation and affordability of cars if we’re going to have cars at all, and I do want there to be cars.

    But the OP and TFA are not really about big-ticket high-profile manufacturing like cars, they’re about long-tail smaller-scale manufacturers who use e-commerce venues like Amazon to bypass retailers and other middlemen. Which sounds great from a market optimization point of view, but it also leave me baffled as to what that has to do with regulation, particularly which discussed at such a high level of abstraction as this.

    I notice, though, that TFA’s policy recommendations are not deregulatory but rather redistributive: UBI and TAA. The OP, however, seems to put heavier weight on deregulation.

    So I for one would benefit from seeing some sort of concrete example of what this might be. What regulations are we looking to pare back and/or eliminate? I want to have an idea that what this proposed deregulation would do is worth the policy price being paid on another arena. Also, I’m not entirely sure that taking theoretical deregulation into the real world would actually create rather than confuse or obstruct growth in practice, even if the theory is plausible.

    Report

      • Thanks, , that helps immensely.

        If the real proposition is marginal degrees of consumer product safety assurances being traded off for marginal improvements in economic efficiency, that proposition doesn’t offend me.

        The converse proposition — that we ought to accept some degree of inefficiency to guarantee product safety — ought to be similarly inoffensive.

        What’s left is to balance these interests.

        Report

        • A common refrain with regard to regulation is that the marginal gains a regulation seeks are oftentimes very easy and affordable when you have sufficient scale and resources, but devastating when you don’t.

          Report

          • It’s likely unknowable if a relaxed regulation yesterday caused today’s accident. So too is it likely unknowable if a stiffer regulation yesterday is responsible for today’s safety.

            To get that kind of cause-effect information, you’re gonna need an actuary.

            Report

            • Very true, but not all such regulations are so finely tuned.

              Using the CPSIA: if a new toy requires that it undergo a $1000 destructive test before it can be introduced to a market, in order to detect the presence of a chemical or class of chemicals that might be present if some of the raw materials were sourced from certain countries with lax environmental laws, that’s a pretty marginal improvement of safety for a steep cost if you are not Mattel or Hasbro. What’s wrong with just requiring some solid record keeping regarding the provenance of the raw materials?

              Alternatively, look at the kind of stuff IJ tackles, like the monks who make caskets and were told they needed to be licensed undertakers (and all the costs that entails) in order to build caskets.

              As with any regulation, you can’t just point to them all and say “Bad!”, you gotta look at them in their context and application (law is a lot like strategy, in that it rarely survives intact first contact with reality – sometimes what looks like a really good idea in the statehouse goes pear shaped when people get a hold of it).

              Of course, given how expansive our laws are, finding the bad ones takes time and resources, as does finding a way to get it in front of a judge once it’s identified.

              Report

                • I know, but IIRC, when the CPSIA was initially passed, the documentation option didn’t exist, nor did exceptions for used goods produced prior to passage, or a bunch of other exceptions that got added later once all the shouting was done. It works now, for the most part, but as with so many sweeping laws, the lack of foresight on display from elected officials was just staggering.

                  Report

                  • I remember that. A lot of people who made small-batch items (e.g., wooden toys) feared they’d be put out of business because of the weight of the documentation/testing they’d have to do, and that a lot of the reselling places (e.g., Goodwill) would have to turn down or throw out used toys. I don’t know how much was truth and how much was hype, but I know a lot of people were concerned.

                    Report

                • What if they lie? I’m a sport fencer. A few years back there was a problem when a protective mask failed catastrophically at the Junior World Cup (the kid wasn’t injured), and forensic engineering showed beyond any doubt that the Chinese manufacturer(s) had forged producers’ markings on the materials and straight lied about the processes used in fabrication. A few months earlier they had submitted samples for certification that were flawless.

                  Report

  7. Imagine that you’re having a conversation with a bright 15 year old who loves noodling on computers, playing video games, so on and so forth.

    He asks you “what should I really start to study when I get to college if I want to get a really good job?”

    My immediate answer is probably something like “javascript”. Maybe C++. Maybe Perl/Python.

    But the main thing that I keep thinking is that the thing that was soooooooooo hot yesterday is a punchline today. Freddie tells a story about one of his students who bragged about specializing in SEO. I still wince a little inside when I think about that.

    If I had to guess what classes will be just as good in five years as they are today, if not better, I’d say something like “computer security, rhetoric, and take golf as your PE credits, if you can” but I have no idea how to best prepare my nephews for tomorrow with regards to what they need to study. “Learn how to learn. Then learn how to turn straw into gold.”

    Report

    • See, it was my business for a while to teach CS majors. The stuff I taught, which was formal languages and automata theory, is precisely as valuable today as it was 20 years ago.

      Yes, that’s phrased like a joke. The students, while in class, complained bitterly that they would never use this stuff and why did they have to know it anyway.

      Then they would get a job and come back and tell me, “This stuff is EVERYWHERE in computing”. To which I would smile and nod.

      Most of us think that once you’ve learned one programming language thoroughly, the second, or the twentieth, is easy. It’s the concepts that are hard, not the syntax.

      Report

      • Most of us think that once you’ve learned one programming language thoroughly, the second, or the twentieth, is easy.

        This. It took me almost a year to get good with Java. Every language after that happened faster and faster as the parallels became obvious. Now the problem isn’t “How do I write in X?”, it’s “How do I stop writing in X when I’m editing a program written in Y?”

        Report

        • The solution is to do all your programming in assembly language because architectures change much more slowly than high-level languages.

          However, some would suggest that’s not a good solution.

          But just type faster and disparity should go away.

          Report

      • I remember the story that… I think it was Troublesome Frog?… told the other day about the sports hero who told the kid “yeah, practicing is really important” and then, later, explained “I never had to be told that practicing is really important. I was just practicing all the time”.

        On one level, there are kids out there who already know python. We bought one of our nephews a python book. He didn’t read it. There are kids out there who, were we to give them this book, would have said “Oh, I already read that one” before showing us a program they wrote that morning.

        If the kids reach the point where they are asking grownups “what should I study to get a good job?”, well, they’re the ones who need advice like “70% of life is just showing up”.

        The ones who will graduate college and set the world on fire? They’re firebrands right now.

        But if I wanted to participate in, to go back to the OP, “preparing workers for this reality by arming them with solid choices and the necessary skills” for the kids already in my circle?

        I have no idea what’s going to be useful tomorrow that doesn’t also sound like boilerplate.

        Report

        • At one level, you are right.

          But at another level, I think it’s important to recognize that people change and grow. Sometimes as kids they don’t get it at all, but they figure it out later on. I know a few people like that, actually.

          Report

          • There’s also an equality-of-opportunity issue here.

            The smart, driven, kid growing up in a dangerous public housing project may simply not know they can express that in python. Until you point them in that direction and let them use a computer.

            Report

      • To take an old anecdote: 35 years ago I was doing system admin on a Vax system, and one of the programmers asked me what the pc line on a dump meant (programming was in Fortran). (It is the address the program was at when it crashed). She had been programming for about a year at the time. Of course if you really wanted to you could force folks to wade thru volumes 1 and 2 of Knuth, which teach you everything you always did not want to know about how a computer works. I wonder how many of the Java junkies today would know the answer?

        Report

    • I would say, “Study English. Take as many composition courses as you can. By all means, study something of direct professional use for your intended career, but you want to do all the writing you can.”

      The difference between a subject matter expert who rises to a high level of technical skill in a given function, and someone who becomes a manager or even an executive, is the ability to communicate the concepts, possibilities, and needs of the subject matter experts to people who have expertise in other fields.

      Report

      • I’ve said this a lot, and I’ll keep saying it, but as an engineer I’ve done far more communicating–written or spoken–than I’ve done anything else.

        Second place goes to “using CAD”, with “sketching three-dimensional objects in perspective” and “creating engineering drawings” tied for third (and very nearly the same thing, when you consider the process and the product).

        Math is fourth place, pretty much on par with “look up information” and “know how to use the company intranet”.

        Report

      • Yep. And real composition, where you write a lot and somebody critiques, not the fake composition that’s literature plus a couple of short papers that too many colleges teach. Also public speaking. A real statistics class. A programming class using Excel.

        The last one requires some explanation. The error rates in real-world spreadsheets are horrendous — rates that would be completely unacceptable in any other programming endeavor. Some of that is intrinsic to the tool — spreadsheets violate a lot of things we know about avoiding errors. The rest is largely due to spreadsheets being written by people who have never been exposed to the best practices for dealing with the inherent problems.

        I was kicked out of a meeting where I had been drafted to represent the development side of a project for blurting out, “If we wrote and tested the real-time code the way you do spreadsheets, you’d fire our asses.”

        Report

        • And real composition, where you write a lot and somebody critiques, not the fake composition that’s literature plus a couple of short papers that too many colleges teach.

          This, this, a hundred times this!

          The rest is largely due to spreadsheets being written by people who have never been exposed to the best practices for dealing with the inherent problems.

          And an utter lack of version control. I’ve told the story before of how I spent a good amount of time at BigAero replacing a worksheet used from drag prediction with a compiled application that was under version control, because people had started tweaking the in cell formulas and macro code without any documentation, and it had been going on for years. I shudder to think how many of those estimates were way off.

          Report

          • Any programming environment where your data is inherently mixed in with your code (in fact, all you can normally see is the data and the code is mostly hidden) is a recipe for disaster. We take non-programmers and give them the worst possible programming environment as their go-to tool, so we sort of deserve what we get.

            Report

            • We take non-programmers and give them the worst possible programming environment as their go-to tool, so we sort of deserve what we get.

              We didn’t give non-programmers spreadsheets for them to write code in. We gave them spreadsheets for them to do accounting in.

              Report

              • We didn’t give non-programmers spreadsheets for them to write code in.

                Nonsense. The original mainframe spreadsheet software (lacking the kind of visual front-end that VisiCalc made ubiquitous) had the explicit goal of allowing non-programmers to write programs*. All PC-based spreadsheet software has added general programming capabilities as soon as the underlying hardware allowed software of sufficient complexity. Which quickly landed them in court — since solutions to some of the problems of doing programming within a spreadsheet structure, like handling forward references, were among the first software patents issued.

                * Followed shortly after by the original (internal) papers pointing out that the non-programmers could “code” much faster than the IT group because they had eliminated specification, development of test cases, etc. And that the IT groups could code equally fast if the programs didn’t have to be correct.

                Report

      • I would change one thing about that – Work on communicating. Written, spoken, visual, all need to be sharp. You will have to do public speaking, you will have to be on point one-on-one, you will have to give a presentation.

        Report

    • My immediate answer is probably something like “javascript”. Maybe C++. Maybe Perl/Python.

      That is, in fact, the exact opposite way to teach someone coding.

      Yes, they need to learn at least one language to actually code in, but the bulk of “coding” is the underlying concepts. Languages are…interchangeable.

      Data structures, algorithms and algorithm efficiency, the core concepts of languages (branching statements, loops, recursion, etc) — that sort of thing you teach.

      There’s a reason most programmers have a lengthy list of languages. They come and go, but they’re all the same at the bottom.

      Report

      • The only caveat I would add on language choice is that if they start with a language that includes garbage collection, at some point down the road they may be put in a position where they will create a disaster. Other than very minor maintenance of one program I no longer touch long-running C programs because I’ve been too long away from structuring code to make malloc/free safe.

        The equivalent in fencing is that everyone starts with foil, with right-of-way rules, because it’s so much harder to learn right-of-way if it’s added later.

        Report

          • The worst memory hack I’ve ever seen is the effort to scrounge for extra memory in the Apollo Guidance Computer.

            The only compare instruction the AGC had was an instruction called Count, Compare, Skip, with the mnemonic written as CCS memloc

            Apollo AGC Instruction Set

            CCS memloc looks at the original data in memloc to see if it’s positive, negative, or a variety of zero, then branches to one of the jump addresses stored in the four memory locations that follow the instruction.

            CCS memloc ;check memloc, then diminish the value (make it closer to a zero) and store it back in memory.
            SUBROUTINE1 ;Jump here if (memloc) > +0 or overflow
            SUBROUTINE2 ;Jump here if (memloc) = +0
            SUBROUTINE3 ;Jump here if (memloc) < -0 or negative overflow
            SUBROUTINE4 ;Jump here if (memloc0 = -0

            What they realized was that in many cases a particular compare could never result in certain branches being taken, so they could store useful data in one or more of the memory locations following a CCS instruction. And they did. Things like the diameter of the moon or the value of pi were stored as branch locations. I don't even know if computer science has a way to describe that.

            Looking at the architecture and the code, I think the programmers must've had bigger balls than Neil Armstrong.

            note: The AGC used one's complement arithmetic, not 2's complement.
            +0 is 000000000
            -0 is 11111111111
            +1 is 000000001
            -1 is 1111111110

            Report

        • I think that’s why C/C++ are standard mainstays of the CS education. First, if it’s done, someone’s done it in C.

          Secondly, you can get incredibly low level with C — and it doesn’t do any hand holding. You’re incredible welcome to shoot not just your foot off, but the feet of anyone nearby.

          Your basic “intro to C” should, taught competently (and heck, I’ve seen it taught well even at community colleges), basically be “Here’s a semester long introduction to memory, pointers, recursion, loops, basic branching logic, basic Boolean logic, and also you’ll learn a computer language as sort of an incidental benefit”.

          Maybe not recursion. Recursion might be a little early for most people. (Although fair warning: If you can’t grok recursion, don’t be a professional coder. It’s not so much that recursion is a common tool so much that understanding how it works and when and why you’d use it demonstrates the right sort of mindset for coding. At least that’s been my experience.)

          Report

          • If you can’t grok recursion, you can’t do diagonal solvers or search trees or a crap load of other really useful algorithms and data structures.

            So yeah, you become a script kiddie.

            Report

            • Pretty much. Plus, I mean mentally — recursion (like the basics of memory — address versus value versus variable name) isn’t so much required for coding (I’ve only had to use it a few times myself, although it does make for wonderfully clean tree algorithms), but understanding the ability of something to call itself, to be able to picture that sort of thing in your head….

              That sort of mental ability is necessary to be a good coder. It’s a good proxy for your ability to not just visualize the possible solutions to a coding problem, but to assess them.

              Recursion, loops, basic boolean logic, branching logic, and value/address concepts — you’ve got those, you’ve got the mental skillset to do the job.

              Although teaching C coders proper OOD is often a trial. Objects aren’t fancy structures….if you’re thinking of them like that, you’re only getting about 20% of the utility they offer.

              Report

              • And you haven’t even touched on threads yet. It can take even very good developers quite a while to get their heads wrapped around thread management. It’s one of the first things I go over with people new to my group, because good thread management is critical to the type of tools we develop.

                Report

                • We touched on threads in my basic CS degree. How to use them, the basics. But really getting into the nuts and bolts of them was…Master’s level stuff.

                  But that was implementing a simulated micro-kernal with N users accessing a simulated file system and simulated shared memory. Basically the guts of an OS, simulated in your own code, which then required creating the threading system so multiple users could work concurrently.

                  So writing your own code to handle the stuff like “Bob and Tina want to use this resource at the same time…”

                  Using threads — the basics taught as an undergrad — are pretty simple. Mostly “How to recognize when to use them” and “What to guard against when using them — deadlock and race conditions are no one’s friends”.

                  I keep pitching to my bosses to thread our main commercial module — but frankly the people that’d help most is our own QA testing folks! Most people don’t utilize the program’s ability to queue up hundreds of problems and run them one after the other (where we could thread them, or even run distributed) instead just messing with a single problem at a time.

                  Fun problem lacking a need, oh well. :)

                  Report

                  • Ah, Friday and the geeks have come out to play :^)

                    From the languages perspective, name scoping. After 40-some years of programming, I have… well, call it Mike-style. It’s not straight structured programming, it’s not straight object-oriented, it’s not straight event-driven, but it works for me and the size programs I do these days. And for every single language, I end up asking “How do I do name scoping to support this approach and the way I prefer to split code up over files?”

                    Serious Python programmers would be appalled at what I do to force Python to fit my preferred model. But Python is available for all of the platforms I end up fooling with, and Guido made the good decision that you couldn’t call it Python unless you included the basic GUI. I wish Larry Wall had made that choice for Perl at some point.

                    Report

      • Well, sort of.

        In most of the real time systems I’ve done, (which are on PLC’s), there are no branches, loops, or recursion. Those just add unnecessary complexity.

        You could view a rung of logic as a long sequence of “if”, “and”, and “or” statements, followed by a “then” (but no “else”), which wouldn’t be incorrect, but it’s easier to see it as a set of relay contacts leading to either a relay coil or some kind of black box that can perform a calculation or memory operation.

        And yet it’s programming just the same. You quickly get as fluent in it as “C”, and yet it’s really simulated wiring to simulated logic gates. Yet you can do things like searching and sorting, timing, counting, or virtually anything else to control a machine.

        The advantage is that it’s about a hundred times easier to debug than C/C++, because you can watch it execute in real time. You can edit a program while the program is running. You can keep fiddling with a logic statement (a rung) as it’s doing something, until it starts doing what you want. I’ve often programmed factories not only while they’re running, but while they’re being built. You just add new lines of code as new equipment gets hooked up, and that code runs along with all the other code that was already running, just like an electrician would wire up a new machine as it’s installed, without shutting anything else down.

        You can do all the same things in a conventional high level language, but you have to stop, recompile, and rerun.

        I really think it would be a better away to approach neural networks, which would be a bit like an analog version of PLC code, or the way genes can operate as state machines.

        Report

Comments are closed.