Linux Cross Reference - <AUTHOR> http://lxr.free-electrons.com/ <comment><USER2> hmm....

       Identifier: systemd
       Not used</comment>


Despite heartbleed: Certification revocation refused - <AUTHOR> https://www.zeitgeist.se/2014/04/12/despite-heartbleed-certification-revocation-refused/

<comment><AUTHOR> To reissue a cert without revoking the previous one is like a half-baked cake. Actually, more like a cake that was never placed in the oven - a complete mess of runny eggs with dry flour and inedible. As long as they don't revoke the cert, the attacker could still use it along with its private key (which they potentially stole from you) to do an MITM attack.

It doesn't make sense.

What if a party is harmed by the compromised certificate? Legally whose fault is it if the CA replaced the compromised certificate but failed to revoke it as well?

</comment><comment><USER2> This looks like an excellent opportunity to weed out bad CAs and drop them from the trust stores. :)</comment>


Japanese Retro Video Game Bars and Cafes Are Getting Shut Down by the Police - <AUTHOR> http://famicomblog.blogspot.com/2018/06/oh-no-japanese-retro-video-game-bars.html <comment> crooked-v Does Japan lack an equivalent of the first sale doctrine?</comment>


Top UN Official Accuses US of Torturing Chelsea Manning - <AUTHOR> https://www.theguardian.com/us-news/2019/dec/31/chelsea-manning-us-torture-un-official-wikileaks <comment><USER2> The New York Times put out a big article lamenting all the threats to press freedom from the Trump Administration through 2019. There was, of course, no mention of the case the Trump DoJ is pursuing against Julian Assange, or the horrendous and illegal treatment being inflicted on him and Chelsea Manning in order to discourage future whistleblowers.</comment>


In Europe, the Noxious Effects of Shipping Are on the Rise - <AUTHOR> http://www.hakaimagazine.com/article-short/europe-noxious-effects-shipping-are-rise

<comment><AUTHOR> Despite the rise of "slow steaming," ships are still big polluters.</comment>


David Cameron pig scandal was predicted in Black Mirror - <AUTHOR> http://qz.com/506490/the-black-mirror-episode-that-imagined-david-camerons-dalliance-with-a-pig/ <comment><USER2> That was seriously my first thought when I saw this news article this morning. I could not believe it. I thought I was reading a new parody site.</comment>


Why Enterprise Software Sucks - <AUTHOR> https://twitter.com/random_walker/status/1182635589604171776 <comment><USER3> I worked at a school that used the Frog VLE.

There was a big push for us to use it for student assessment.

I tried, I honestly did.

1\. I used it to set homework assignments.

2\. .py files were blocked and students couldn't upload them.

3\. They submitted code as .txt instead.

4\. I'd click on my class to view submissions, it showed the top 5 submissions.

5\. I'd click on a submission and it would download.

6\. I'd view the submission locally.

7\. I'd convert to .py to test the code worked.

8\. I'd assign a grade.

9\. I'd then have to click (maybe 5 - 10 times) through to a different page to record the grade.

10\. I'd then have to go back to the submissions page.

11\. After grading the first 5 submissions, I'd click through to the next page.

12\. After grading the 6th submission, I would be returned to the first submission page and have to click forward again.

13\. When you get to the 30th submission, you're maybe doing fifty clicks for each homework assignment.

14\. I had 4 classes all doing the same assignment.

15\. This could not be amalgamated into a single marking spree.

I spent weeks trying to grade my students and then just gave up and had them email me their assignments from that point on.

These platforms are all full of features; commissioned, designed, tested and developed by people who have never set foot in a classroom.

<comment><USER4> And, to be clear, this has nothing to do with "classroom".

The problem is people design these things without any sort of actual testing in actual conditions where the software is supposed to be used.

Displaying 5 results per page is a bug, not a feature. Having restrictions on filetypes is a bug, not a feature. The same could go on to the rest of their "features". (My biggest pet peeve is date formatting — just give me ISO8601 dates, please; HackerNews, you, too!)

At SXSW, there was a coffee-bot vendor. They didn't bother testing with an adequate number of folks, so, the whole thing overflowed on first day. Predictable? Yes. Would be noticed by a committee? Not a chance.

<comment><USER5> > _just give me ISO8601 dates, please; HackerNews, you, too!_

Strongly seconding. It's an annoying UX antipattern, especially as it loses precision over time ("28 minutes ago" is fine, but "yesterday" or "5 days ago" or - even worse - "2 years ago" is not; having the date specified to hours or minutes is actually useful, especially in context of a site with international audience). Doubly so on HN, which doesn't even bother with giving the actual date/time in the tooltip, which is the usual cop out (not an actual solution, since there are no tooltips on mobile).

<comment><USER6> I prefer the HN method of 28 min, yesterday, 2 hours ago, etc... for HN. The older a comment or post, the less relevant it is to a particular discussion. This site is for real-time discussions of articles, so it is optimized for that use-case. The older a comment, the less relevant it is towards the immediate discussion. Thus, older comments have less precision, because those details don't matter for the discussion.

I'd expect a site/application that is designed for students to manage homework would have different date/timestamp requirements.

<comment><USER7> They could easily do it the Reddit way and still provide a timestamp but keep the simplicity and relative time format. Just have it pop up the timestamp on mouse hover. That's still very simple and can be effectively done using just CSS.

<comment><USER4> You don't even need any CSS for that — the title attribute alone would be sufficient.

</comment></comment></comment></comment></comment></comment><comment><USER8> I think this gets it wrong. The real reason enterprise software sucks is that enterprises have complex and unique workflows and would prefer to buy software that they can fit to their workflow rather than change the workflows of their profitable business with tens of thousands of staff who will need retraining.

If you look at all of the most successful software of all time they are the complete antithesis of the Unix philosophy that so many designers and developers prefer. Word, Excel, SAP, Photoshop, Salesforce, JIRA. People hate them because they are complex, configurable, and have 1000 features.

But that's the same reason they can sell into law firms and oil refineries and animation studios and all those other very diverse businesses.

And most enterprise software sucks because 1) writing complex, highly configurable software is hard and 2) very few companies have the billions of development dollars the above handful of companies have to throw at the problem to try to make it tractable.

That the end user isn't the purchaser isn't going to change that fundamental reality that businesses are complicated.

<comment><USER9> No, this does completely get it right. Enterprises _thought_ they needed all the control and security features of Blackberry until the iPhone came along and made the UX gap unsustainable. Enterprises _thought_ they needed on- premise hosting of Exchange, Office and SharePoint instances under their _control_ for email and productivity, until GSuite came up with a better, less configurable user experience based on consumer features that is making inroads in the market and generally works better for users. Slack is another proof point - the "consumerization of IT" trend in general.

There absolutely are outlier businesses like banking, government, healthcare and other highly regulated fields where they do have critical control needs. Notice how all of these are associated with crappier UX.

But the average business does not really have such needs, or at least it can be a mistake to blindly trade off employee happiness and productivity against feature checklists, yet that is typically the approach employed by procurement experts.

<comment><USER10> No serious enterprise uses gsuite , it's a small businesses tool.

iPhones and smartphones in general have greatly increased the risk of data theft or being spied.

Insurance companies are more than happy that others have switched to smartphones (I worked in insurance consulting for cyber risks)

<comment><USER11> [https://gsuite.google.com/customers/](https://gsuite.google.com/customers/)

I don't think your comment is accurate, based on my first-hand knowledge of large companies that use gsuite, as well as their customer list in the above link.

</comment></comment></comment></comment><comment><USER12> I write enterprise software for fortune 100 companies. If I put myself in the user's shoes and had an alternative, I'd most likely uninstall what we built and jump ship. But they can't. It's an internal app and the user is forced to use it. I try and fight for what's right but if I had a dollar everytime I heard " we aren't google/amazon" , "only xx people will use it", "we are just doing this to get off the old tech stack and need a 1:1 rewrite".

Big ships turn slowly and change is difficult. UX isn't valued. Agile is really waterfall and when a big is found it's always a critical showstopper. Enterprise is a different beast altogether.

<comment><USER13> > UX isn't valued

Good UX drives costs down for training and draining of human capital. That should be the pitch.

Next question, who in the fortune 100 should hear that pitch?

<comment><USER14> You're assuming that the cost of human capital actually matters in big corporations. As someone who has worked for several Fortune 100s and a couple of government agencies, I assure you, that is _not_ the case. Employee time is treated as having no value, and things that damage the efficiency of employees are not relevant.

I once saw a "cost saving" round prohibit our team's QA engineer from getting a new SoapUI license (we were supporting an API!). It took three five-person meetings to get official approval to buy a $100 license - at a human capital cost of thousands of dollars. Not an eye was blinked at this absurdity.

Along the same lines, I once saw a lead architect go through the same nonsense to get a $100 Adobe Acrobat license (at a government agency). He said to me "It's easier for me to spend $100,000 dollars than to spend $100". He could have asked for a couple of new heavy-duty Unix servers with Oracle, and gotten it approved easily. But Adobe Acrobat? No, that's waste!

See also "bikeshedding".

<comment><USER15> It works in the other direction, too. I've seen (and been in charge of) a depressing number of projects that spent hundreds of thousands of dollars' worth of people's time on writing an in-house replacement for a piece of software that cost, at most, tens of thousands of dollars.

My working hypothesis is that management types don't really think the costs are comparable, because licensing fees are an operating expense while in-house development costs are a capital expense. Which is true, but I imagine in-house development is a tricky thing compared to other capital expenses, since the final product generally has zero market value.

<comment><USER16> Cutting costs gets you a raise. Delivering a big project is a path to promotion.

</comment></comment></comment></comment></comment><comment><USER17> I'm not sure where this originates from, but the most succinct definition I've heard for "Enterprise Software" is that the person who pays for it isn't the person who uses it.

<comment><USER18> If anyone even uses it at all!

I have a friend who works in a sales role for IBM. He told me that part of his bonus is contingent on being able to prove that the customer has actually installed the software which they bought.

The policy apparently arose because certain public sector entities had refused to consider new deals since they still hadn't got round to installing the software for which they had paid millions of dollars, years before.

<comment><USER19> I'd bet good money Watson got sold to a bunch of companies who wanted "AI" then they didn't do anything useful with it.

It was a smart play by IBM, the sales guys want to say AI and machine learning, so give them some generic crap which gets loosely integrated into parent projects and they can have a field day on the phone selling it.

Watson would be a perfect study on modern big business software that these billion dollar consultancy companies engage in.

Plus IBM makes even more doing the "integration" than the original sale.

<comment><USER20> I'm almost certain that Watson was a series of Python and Prolog "scripts" that were packaged together with big black boxes, blue lights, tagged as AI, and run through the IBM sales and marketing machine.

The result was huge margins for IBM and customers scratching their heads afterwards.

<comment><USER21> Watson was the World's Greatest CS PhD Thesis.

Not so great as an actual business.

</comment></comment></comment></comment></comment><comment><USER22> This is missing a big part of the dynamic. Much enterprise software is what Joel Spolsky describes as "internal software"[0]:

> Internal software only has to work in one situation on one company's > computers.… Here usability is a lower priority, because a limited number of > people need to use the software, and they don't have any choice in the > matter, and they will just have to deal with it. Speed of development is > more important. Because the value of the development effort is spread over > only one company, the amount of development resources that can be justified > is significantly less.

So, a lot of enterprise software sucks because it simply doesn't make sense to make it decent. No matter how directly the end users communicate with the developers, this won't change.

The economics of internal software don't apply to products like Blackboard (which would go in Joel's "shrinkwrap" category), but the vast majority of enterprise software is internal and thus sucks for reasons entirely unrelated to this thread.

[0]: [https://www.joelonsoftware.com/2002/05/06/five- worlds/](https://www.joelonsoftware.com/2002/05/06/five-worlds/)

<comment><USER23> > This is missing a big part of the dynamic. Much enterprise software is what > Joel Spolsky describes as "internal software"[0]:

> [0]: [https://www.joelonsoftware.com/2002/05/06/five- > worlds/](https://www.joelonsoftware.com/2002/05/06/five-worlds/)

And these worlds change over time:

> Games are unique for two reasons. First, the economics of game development > are hit-oriented. Some games are hits, many more games are failures, and if > you want to make money on game software you recognize this and make sure > that you have a portfolio of games so that the blockbuster hit makes up for > the losses on the failures. This is more like movies than software.

> The bigger issue with the development of games is that there's only one > version. Once your users have played through Duke Nukem 3D, they are not > going to upgrade to Duke Nukem 3.1D just to get some bug fixes and new > weapons. With some exceptions, once somebody has played the game to the end, > it's boring to play it again. So games have the same quality requirements as > embedded software and an incredible financial imperative to get it right the > first time. Shrinkwrap developers have the luxury of knowing that if 1.0 > doesn't meet people's needs and doesn't sell, maybe 2.0 will.

The first part of that's kinda true, but DLC means the second part isn't. People will pay for what amounts to a point upgrade for game software.

</comment></comment><comment><USER24> When I click on Course Tools on Blackboard, I get a bewilderingly long list including:

Basic LTI Tools, Blackboard Collaborate Ultra, Brainfuse HelpNow, Cengage Learning MindLinks (TM), Content Market Tools, .... what _are_ all of these things?! I want to track and post grades (and export them to a spreadsheet), mass email my students, post a link to my syllabus and homework assignments. That's it.

Meanwhile, with our recent "upgrade", the option to merge two sections of a course (so that I can email both at the same time) went away. I have to email our tech support (?!) to ask them to do this. Apparently this was supported by a plug-in module (??) from a third-party vendor (??!!!) who went out of business.

If merging two courses is so difficult as to require a third-party solution, then I have to wonder about what Blackboard's codebase looks like.

<comment><USER25> Never mind the useless crap. You'd think the spreadsheet used to enter grades — a core functionality, and the only essential feature I need for a course (everything else can be replaced by a mailing list) — would be at least halfway decent. Nope, it's the single most horrifying spreadsheet implementation I've used in my life.

</comment></comment><comment><USER26> User-design indirection is a tremendous problem. It's a form of the principle- agent problem, or of what I've been noodling at under the general category of "manifestation", which is the idea that there are problems which are obvious and evident because they are _manifest_ : immediately apparent, visible, obvious, observed, experienced, felt. And those which are _not_ : nonapparent, invisible, non-obvious, unobserved, not experienced (in the future, by others, elsewhere), unperceived.

Nonmanifest problems are a substantial class of _hard_ or _big_ problems. Things which are outside your own experience, or the experience of administrators, managers, judges, or executives (in the broadest senses of the words) are _really, really hard_ to understand, grasp, or appreciate.

(This is a key argument for diversity, _real_ diversity, of experience and background on your team(s).)

Two specific examples, both trivial, though illustrative, come to mind. One was a flyover-state hotel I'd stayed at recently during a road trip. There were numerous obvious design flaws of the building, ranging from the entrance (no way to get a wheeled luggage trolly up the steps) to the interior layout (lack of lifts, floor plan) which strongly suggested some architect and design committee who'd never visited the site having designed the facility.

Another was a pool party years ago at which a guest suddently exclaimed that something had touched them, under the water. Nothing was visible. Then a second and third made the same comment. The culprit? A clear plastic drinks tumbler, which would oscilate when touched, given the mass of the water it moved against, giving a lifelike contact response, but being all but invisible in the pool itself. Until directly experienced, and ultimately revealed, the effect was difficult to credit.

<comment><USER27> Ironically, the tumbler is manifest and the design issues are vaguely not.

<comment><USER26> Sort of.

Though the tumbler was invisible, and hence, not perceptible. You could go through any number of cases of phenomena throughout history, such as the germ theory of disease, prions, electromagnetic force, subatomic particles, or mental health, all of which have, at least by current reckoning, _some_ level of cause or mechanism, but which were seen as beyond description or explanation in the past.

The case especially of moving from some sort of divine or moral explanation, as has been the case for both infectious and (somewhat still the case) mental illness is a critical one. Similarly for natural phenomena (comets, asteroid impacts, earthquakes, volcanoes, cyclonic storms), often seen in the past as portents of the gods / a god, rather than events with specific causal mechanisms.

There are several Big Problems currently facing humanity which are straddling this manifest/not-manifest cusp, with media manipulation and global warming being two of the more prominent.

</comment></comment></comment><comment><USER28> Pretty true. For example, some of the worst applications I have ever used are by far timesheet applications.

It's a product with a completely captive audience, that cannot go to the competition. If you don't fill your timesheet, you don't get paid its that simple.

Typically these are either built-in house, or are an expensive third party product with terrible usability, bought by managers who might not even have to use it.

If an application's audience is captive which is by definition the case of most enterprise applications, there is no incentive to care about user experience, unlike public internet applications.

<comment><USER29> Ditto with job applicant portals. They have a bunch of weird features for doing obscure HR stuff like internal approval chains, but terrible UX for the actual applicant. Would it be so hard to handle applicants whose resume is a url?

<comment><USER30> A couple of years ago, I was applying to work for a big government contractor, and even though they wanted to hire me, they couldn't figure out how to move forward past the "contigent job offer" phase in their new hiring software. I ended up taking a job somewhere else after going back and forth with HR for over a month as they tried to figure out things on their end.

<comment><USER31> I had a contract where the recruiter apologized in advance for the onboarding process. It started with not being able to create an account with the e-signature vendor with whom I had an old, deactivated account, and being unable to get the bureaucracy to send the paperwork to a different email address. It went downhill from there.

</comment></comment></comment></comment><comment><USER32> We were forced to 'upgrade' years ago from WebCt to BlackBoard. The worst part was not the feature set, but re-learning all of the things you already knew how to do.

So when the administration decided to hold focus group sessions on whether to purchase a new system (because the prices were suddenly raised, IIRC), a few of us got Moodle included among the choices, and then managed to convince our colleagues and the institution to accept it with the most convincing rationale: the price would never change and since open source software _tends_ to be evolutionary for the most part, we probably would not face having to re- learn how to use the system again.

I don't think you would be surprised to learn just how easy it was to convince users to accept a system that's unlikely to experience massive change.

In any case, we've been using Moodle for years now. It's basically the same as when they set it up, and all my labour-saving import-export tricks have remained consistent over the years.

</comment><comment><USER33> I used to work in support at a big company.

We went through endless Salesforce resigns with folk's who don't use them all making decisions and patting themselves on the back for each redesign. It was horrific as a user experience, everyone is a UI expert and had an opinion based on this one time a thing happened... 3 years ago... In fact most every decision was made dude to some anecdotal incident where the person who tells the story was mildly inconvenienced this one time.

Fast forward a few decades and I'm a web developer writing software. My direct customer has a website where they want updates on various things from their partners. This site is entirely for their partner's benefit, our direct customer has a different site for the same data so that they can do more complex things. These partners are barely computer literate, our partners are "power users" (everything is relative here).

So of course this site I built that is dead simple because any complexity confuses them, and by most measurements (and my conversation with the partners) it is doing well.

Accordingly my direct customer wants like dozens of new fields, options to export data and etc ... all things that their partner's never do, didn't ask for ... and don't understand.

Meanwhile I ask the customer(s) about adding a block of text in a section of the site to help guide the partner's along better .... no response. (actually I've started just adding them on my own now...)

<comment><USER34> CRM products tend to be super easy to customise, so they often end up a complete mess simply because it is so easy to add or change stuff.

<comment><USER26> That's a really good point. In general, the more you reduce the cost of doing a thing, the more of that thing you'll end up with. The Jevons paradox.

If the reduced cost is of making gratuitious changes to a system's appearance or interface ... you'll end up with a bunch of gratuitious UI changes.

</comment></comment></comment><comment><USER35> The listed reasons why enterprise software sucks are not terribly controversial, they are well known. Perhaps more controversially, here are some reasons why enterprise software is good and maybe even fun:

1\. The domain that the software operates in is usually complex and varied.

2\. The job that the software does is often meaningful, and helps people be more efficient or faster at a job, as opposed to simply entertaining them.

3\. Users of the software are generally professionals, and can accept (and often demand) a deeper learning curve in exchange for more features.

4\. It's generally more fun to develop software for smart devoted people than uncommitted interlopers.

5\. Smart people using your software often directly challenge you to innovate (they make feature requests), rather than spending most of your time reverse engineering the psychology of your users based on aggregate behavior whom you rarely interact with.

6\. Enterprise software often needs to dive deep into an industry or practice, they don't need to generalize to everyone.

7\. This isn't a distinct benefit, but enterprise software does not need to be a large monolithic application, it can be nimble and fast moving like any other software.

</comment><comment><USER36> No, it's really more complicated than "Built to appeal to decision makers, not actual users."

In terms of decision makers vs. users, the issue is that there is more than one group of users. For Blackboard, there are faculty, students, and administrators. There's a venn diagram of overlapping desires there, but there's also plenty of room for contradictory requirements.

Second is the nature of enterprise software:

\--It's large, expensive to buy and expensive to maintain. So, you can't go switching it out every time a cool new product comes to market with new convenient features. You're stuck with it.

\--But the vendor doesn't want to lose customers, so they figure out a way to bolt on the most popular things that come along, usually 2-3 years afterwards.

\--The implementation is clunky and awkward and adds complexity for users that don't need the feature and maintenance of the system

The alternatives aren't great either: Pick an up & comer, like Canvas. It's smoother, more refined UI, less bloat, etc. People switch, because it does 80% of what they need very well, and they decide they can live without the 20% hardly anyone ever used. But over time, Canvas gets caught in the same trap. Users clamor for more features over time. They bolt on more and more, and the process repeats.

Sometimes a corporation (or university) will try to circumvent this. They go "best of breed" for all functionality

\--They buy a minimalist LMS, they buy a separate system for advising & appointments etc., they buy a third system to replace the financial component handled by Blackboard Transact, etc.

\--And, for a short period of time, users may be a little happier, until bolt- ons creep into each product, but maintenance & integration costs explode on the infrastructure side.

\--If it gets too bad, someone in leadership will eventually say, "Why are we spending 3x as much on license maintenance with <X> full time employees to keep it all running when we can get one single system to do it all for us?

And some variation of the above cycles repeat over & over.

<comment><USER37> What do administrators use Blackboard for, and is it actually very good at that?

<comment><USER36> Administrators use it for data analysis on course usage, trend analysis in course performance, and other groups also us it for some types of financial transactions. None of it's great, most of it is minimally adequate.

</comment></comment></comment><comment><USER38> Not sure about the generalization to enterprise software in general, but the critique of people choosing blackboard is spot on.

Before selecting a tool, professors should always ask: "is this the tool that two recent graduates would choose without my intervention?". Because to use any other tool is to deprive your students of skills they'll likely need.

Also:

> Once profs and students put down the pitchforks, committees will go back to > their checklists, and feature creep will resume.

The solution is simple, don't put away the pitchforks. Keep them out until the people choosing the software inform the people that make the budget that that money would be better spent elsewhere.

If the professors don't know what tools those are, spend the money you're saving by not forcing featureful garbage down people's throats on engaging the studentry until the answers are clear.

Like maybe create work-study programs where students who know how to run the kind of boring website the web was designed for are paid to assist teachers in this task.

<comment><USER39> Every popular computer OS except android has an ssh client now. Just give the students and professors shells and have them put the documents in shared folders.

<comment><USER40> This is kind of a manifestation of this agency problem, though. We, presumably the people that would write this theoretical software, have a vastly different background than the people who will use the software (general students, not just CS students).

SSH is perfect for us; it's a well known and supported tool that's shared in countless other workflows. Can you imagine the struggles of an Art History student trying to submit a paper at 3am and getting a message back that host key verification failed? I suppose even before that, they would need to figure out navigation in SFTP. Or resort to a third-party GUI SFTP client; and the options that GUI will ask them for are probably bewildering. I can just hear them asking "What the fuck is a host/server? All they gave me is this stupid website, sftp-server.myuniversity.edu"

<comment><USER39> It's common among chemistry students because of the incredibly expensive Unix software they use for calculating eg molecular orbitals. I've gone to their meetings and listened to them, they know little about computers and are taught to use ssh.

</comment></comment></comment></comment><comment><USER41> My slightly geekier explanation for Why Enterprise Software Sucks is to simply link to this facetious GH repo: [https://github.com/EnterpriseQualityCoding/FizzBuzzEnterpris...](https://github.com/EnterpriseQualityCoding/FizzBuzzEnterpriseEdition)

<comment><USER42> [https://github.com/EnterpriseQualityCoding/FizzBuzzEnterpris...](https://github.com/EnterpriseQualityCoding/FizzBuzzEnterpriseEdition/issues/443)

This is fantastic.

<comment><USER43> Created 2 days ago! I'd say I'm shocked this repo is still going strong, but with the amount of SaaS fodder geared towards dev teams these days, seems like we'll never have enough time to incorporate them all. Throw em on the backlog.

</comment></comment></comment><comment><USER44> Disclaimer: I work at Instructure, the company that makes the LMS Princeton is moving too. Opinions are my own, etc

First things first, Blackboard is some of the worst of enterprise software and a huge part of why they have lost so much market share is not only because they had a difficult and obtuse to use product, it is also because they were extremely aggressive in buying out any competition and EOLing their products and forcing schools against their will onto Blackboard.

And I think this is the bit that is often the case about the worst enterprise software is the it gets to a point where customers are so entrenched that the company behind the product has market forces that drive it to grow through unhealthy means that are often hostile to customers.

To his conclusion about all software tending towards these same problems, I can't agree more. It is a HUGE challenge to continue to deliver software that remains easy and friendly to use in light of the real need to add real features. You simply can't just ignore the market that thinks differently about a given problem and the workflow to solve it.

I think the right answer to this problem is not just really great product and UX (though that is critical), the real challenge is to figure out the underlying technology platform and engineering process that makes it cheap to build new features and compose them together without the complexity becoming overwhelming for your average engineering team. From what I can tell, this sort of architecture looks _vastly_ different from how most software is started and how we think about software in general. Making that transition is one of the hardest things to do in engineering and it is what sets apart companies who continue to deliver well liked software and those companies that tend towards being defined by worst tropes of "enterprise software"

<comment><USER45> > a huge part of why they have lost so much market share is not only because > they had a difficult and obtuse to use product, it is also because they were > extremely aggressive in buying out any competition and EOLing their products > and forcing schools against their will onto Blackboard.

Sounds familiar — that's essential what Chegg did to all online reference management tools. They bough out RefME, CiteThisForMe, EasyBib, Citation Machine, BibMe, and probably some more that I don't know off the top of my head. They then remove functionality from all the sites and shoved them full of ads for their other services.

Citationsy ([https://citationsy.com](https://citationsy.com)) is still independent of course :-)

</comment></comment><comment><USER46> As somebody who has: (1) At a management level, chosen and implemented and defended unpopular and objectively clunky enterprise software; (2) As a user, been riled by the utter degeneracy of clunky enterprise software chosen and implemented and defended by others; (3) As a developer, had to splice additional functionality into crufty enterprise software; I have come to the conclusion that the main reason enterprise software sucks is because those who choose it are not those who are condemned to use it, and draw benefits (such as additional data) without paying any of the daily costs in maddening workflows and utterly shitty user experience.

</comment><comment><USER47> Read it on thread reader: [https://threadreaderapp.com/thread/1182635589604171776.html](https://threadreaderapp.com/thread/1182635589604171776.html)

<comment><USER26> Why Twitter Threads Suck ;-)

</comment></comment><comment><USER48> With JIRA (and most other enterprise ticketing/scrum sofware) EVERYTHING is possible but nothing is easy ! What I want to buy is NOT 1001 to log/validate/confirm/report a "login form" doesn't work issue. I want to BUY someone's workflow that has invested real time and research and optimised the workflow. The software should only have a supporting minor role in this workflow-product.

Its like buy a super-duper-expensive-hi-fi-amplifier... I don't want 9 dials to control the tone and bass. I will never be as good as the sound engineers as NAD. I want to buy THEIR tone expertise ! i.e an amplifier with an on-off and volume button.

<comment><USER49> We are pretty much building this. We want to optimize the workflows so they actually make sense and recommend best best practices. The main thing we want support is individual's and the team's momentum. If the team has momentum, it's feels good and overall the company will make more progress. Features or anything that get in a way of that should be automated or not added at all.

[https://linear.app](https://linear.app)

<comment><USER48> Looks good... but if you want to sell me (based on my first comment)..The word(feature) "issue tracking" should not be the first thing I see. I again "see" just another "issue tracking product" ( with a slick interface). Sell me a workflow-process not software.

</comment></comment></comment><comment><USER50> I used to work in higher ed and dealt with the awful Blackboard system.

For reference as to how bad it was, different modules used different database vendors (MSSQL vs Oracle).

Also here's a comment I had left myself about how to work with dates in the Oracle db (aka the Blackboard Transaction System, aka BBTS):

      # BBTS doesn't use a date,datetime, or time column from its database.

      # Instead, it uses a float that is the number of days since 12-30-1899.

      # The Ruby Time class is ideal for handling this, but the Ruby Time

      # class doesn't work for dates before 01-01-1970.

      # The magic number is: TransactionSystem::MAGIC_DATE_NUMBER (25,569)

      # If BBTS is below that number, we must use the Date class.

      # If BBTS is above that number, we will subtract 25,569 from the BBTS

      # and start counting from 01-01-1970 instead of 12-30-1899.

      # Dealing with dates before 1970 will take much longer to process.

It was quite a challenge to make use of it.

</comment><comment><USER51> It's like how the decision to write a blog post as a series of tweets is really easy for the writer who doesn't have to deal with the task of reading a series of disjointed blurbs of text.

</comment><comment><USER52> > _" Software companies can be breathtakingly clueless when there's a layer of > indirection between them and their users."_

Any product where the users or consumers of the service are not the target market is horrible and becomes misguided on pricing and functionality.

Enterprise software is surely caught up in this mess of usability not tuned to their actual customers that have to use it. There is some abstracted target customer above the actual users that clouds the usefulness and utility of the product.

You might say in the US that we have _enterprise healthcare_ , the target market should be consumers and doctors, but the insurance companies target customer is employers and their own bottom line.

</comment><comment><USER26> A/K/A: The Tyranny of the Minimum Viable Purchase Manager/Committee.

(See: [https://old.reddit.com/r/dredmorbius/comments/69wk8y/the_tyr...](https://old.reddit.com/r/dredmorbius/comments/69wk8y/the_tyranny_of_the_minimum_viable_user/))

</comment><comment><USER53> In the case of taxpayer funded deployments (i.e. government acquisitions) it's generally due to being built by the lowest bidder, coupled with an inadequate incentive structure to fix. This may also be the case in some corporate deployments.

<comment><USER54> It's also being designed and implemented in a situation where 5 people plan and oversight the work of 1 person-ish. IT is pretty horrible about having lots of know-nothings with shiny job titles telling one or far fewer people who actually do the work and know what is possible that their technical objections or restrictions are false/made up/etc.

</comment></comment><comment><USER55> This is very true but also very well understood. Marc Benioff is selling to C-level execs who will probably never use the Salesforce software themselves. Same reason why Phil Mickleson is the spokesman for Workday. The people making multimillion dollar purchase decisions are playing golf and watching CNBC not sitting in a cubicle wondering why the software sucks.

This is the exact reason why I'm skeptical about Slack's future and why I think the stock is going to be troubled for a while. It's a rare enterprise software product that's beloved by the people who use it and to my knowledge doesn't do the same kind of lengthy multi-month/year "take clients out for steak" sales cycle. It seems to rely heavily on upward pressure from employees to gain traction. I'm not convinced that that strategy is going to be super effective, especially competing with Microsoft who already has massive enterprise sales teams with well-developed relationships with the types of people who make purchasing decisions.

Ben Thompson wrote a great piece a few months ago on why GCP is facing similar difficulties gaining traction in the enterprise.

</comment><comment><USER56> "The point is, some products are sold directly to the end user, and are forced to prioritize usability. Other products are sold to an intermediary whose concerns are typically different from the user's needs. Such products don't HAVE to end up as unusable garbage, but usually do."

This is also why I've often said software built under government contract sucks and has terrible UI/UX, and why I'm glad I no longer work in that industry.

The moment you separate "customer" from "user", you end up building software for some senior paper-pusher who is just trying to check all the boxes on a requirements checklist. And guess what? "The software shall have a quality user experience" is not something that can be included in said list of requirements.

And in this environment, most developers even think their job is to "build software that satisfies all the requirements" to the point that they're completely oblivious to all those other concerns that would be downright mandatory if the software was sold to the end-user.

</comment><comment><USER57> _Software companies can be breathtakingly clueless when there 's a layer of indirection between them and their users._

They aren't being clueless at all. Companies care about their customers - <USER2> people paying - not the users.

</comment><comment><USER58> The truth is though, if you make user focused B2B software, it likely won't do well.

I worked on a product recently where we built a new stripped down mobile version of our enterprise software that was extremely easy to use for the average user, but had minimal functionality for management. Our manager users have never been big adopters of our mobile software, because they spend most of their time looking at large reports that don't work well on mobile, so we figured this was a safe strategy, at least for the initial launch.

However, we saw extremely low adoption, because managers would try the app, see that the minimal amount of features for them, and then they wouldn't recommend it for the rest of our users. We refocused to adding features for management, and we started to see much larger adoption by the average user.

Selling user focused software to the someone who isn't the main user will always be an uphill battle. The companies that have had the most success are those like Slack that are able to get into the organization without the buyers approval first.

</comment><comment><USER59> On the other hand, good enterprise software ... Comes with an API that doesn't break on a whim every few weeks, but is stable over years or decades. Works diligently to solve bugs on a timetable. Changes gradually. Has plenty of documentation. Offers training courses. Is certified to work in highly regulated environments.

</comment><comment><USER60> Steve Jobs made this point very well in this video

[https://www.youtube.com/watch?v=MLvvzktuVY8](https://www.youtube.com/watch?v=MLvvzktuVY8)

<comment><USER61> Nice video. I've definitely heard this narrative before. There was a great blog post on HN a while back bemoaning feature lists but I couldn't find the one I am remembering on google. I found two other on-point articles of interest, though:

[https://www.cmswire.com/information-management/everything- yo...](https://www.cmswire.com/information-management/everything-you-know- about-selecting-enterprise-software-is-wrong/)

[https://werd.io/2016/stop-writing-specs-start-finding- needs-...](https://werd.io/2016/stop-writing-specs-start-finding-needs---what- ive-learned)

</comment></comment><comment><USER62> While I was at university, they installed a system called It's learning. It gave you basically a forum per class and a way of handing in assignments. It was basic, but broken in many ways (like a rich text editor that only worked on IE - meaning I couldn't actually send messages from my Mac; in 2006), and everyone agreed that the only thing it had over the custom system that came before was looks. I think for a long while part of the old system even had to be embedded, because It's learning didn't provide all the features.

What it did have, though, was a lot of nice videos presenting it. This was extremely high tech at the time, and quite likely to woo the people buying it... maybe they felt they didn't even have to try it, because they'd seen video demos.

AFAIK it's been replaced twice in 15 years. So yeah.

</comment><comment><USER63> I had the impression, after working in two big corps, often even the "IT people" working there don't know much about IT.

Sure, the people who run their data-centers often know their stuff, but "IT professionals" in their other depts are some business people with some extra IT training.

Often there is at least one person who doesn't know what they are doing, but doesn't say so. Which leads to bad decisions.

One is enough, because all the people who say "they don't know" will go to the ones who don't say it. Then you end up with some a whole bunch of subtle implementation details that are based on wrong decisions, but accumulated to one big mess.

</comment><comment><USER64> Some very valid points in that twitter threads.

Enterprise software sucks because most companies who build them hardly have product designers. The distance between people who build those softwares and end users is quite a lot and no direct communication is usually possible. Most of the people building these software have zero idea of what the end user stories look like.

My wife, an optometrist, spent many a evenings complaining about the severe lack of usability in the software she had to use everyday. It is so bad that when she quit her job she found another firm which used the same software so that she did not have to go through learning yet another crappy software again.

</comment><comment><USER65> Products die young or live long enough to become complex "enterprise software" that a subset of its users hate immensely.

I would also like to point out enterprises have unique and complex workflows which require these softwares to have such complexity. I worked for a a big bank and every new manager/director/partner tried to bring in change by introducing more complex workflows and more checks.

So it's not a software problem its a people problem. It starts of as a thing that could be done on a white board and then you end up using complex Service now UI to do the same stuff.

</comment><comment><USER66> I'm the lead developer in an org where due to the nature of servicing multiple stakeholders that have a lot of say on what we build - we're building these these types of monstrosities where everything is configurable so it takes dozens of clicks to go anywhere and the end user is not a priority.

Yesterday I almost cried. I've started dusting off the old resume, catching up on my craft and I plan to go back as a senior software engineer in a consumer facing project at a remote first organization, wish me luck.

</comment><comment><USER67> This is very relevant to my current project. We're building a dashboard that's fed with very diverse data, could allow you navigate and examine that data in tons of different ways, and we could make it incredibly configurable.

But we're also aware that our users are not power users. It first needs to be understandable to use it. If we throw a ton of features at them, because they'll drown in them and then not use it. And the prospective users are the decision makers here: we're building this for upper management, and they have no idea that they should want this, so we have to make this attractive, easy and pleasant to use. When they see it, they have to want more, not be put off by incomprehensible complexity.

So we're holding back on features. I know a million features I could add to this, and I really want to, but every time the question becomes: how will they access this? How will they understand what this does? So we're careful in adding features, and put a lot of time into getting the interface right. It doesn't yet have all the features I want it to have, but hopefully all the features it has will be features they understand and want to use. And then we'll add more based on what they need, not on what we think we can offer, because that's going to be way too much.

</comment><comment><USER68> As a professor, this is completely true about blackboard, and every other LMS (like canvas, etc.).

Making it worse is that some universities have policies forbidding professors from rolling their own system (either for frivolous "security" reasons in the low-trust environment that is the modern university or because of some kind of bizarre ideas about brand identity), so there is no market pressure on any of these companies to actually serve end users. It's horrible.

</comment><comment><USER69> I worked in this industry with blackboard, making something similar. The truth is that the school administrators hold the purse strings. They also don't actually have very much money to begin with - margins are tighter because your price per user is much lower than most business to business end-user systems.

The users absolutely want features. And you hear about them. Its the joy of the developers working on it to actually deliver it to them. But the admins don't care. They don't want user-level features and ease of use. They want reports. Lots of reports. They want a system that will generate a report on anything, in exactly the format and UX that they desire, ad hoc. And then they want it to be customizable in every way possible. This is where the majority of work goes, because the people with the purse strings demand it. If they demanded a better UX, they'd get it, and the developers working on it would be MUCH happier. We had one of the "better" UX's but it got older, and work couldn't be prioritized onto it.

So really, the parent definitely rings true to me. The incentives from the "buyers" is NEVER about a good UX. Its an afterthought. Maybe if the buyers were more accountable to those having to use it this would change.

</comment><comment><USER70> "Body Shop" consultancy farmed me out to company producing software for corporations in an industry known for its artificially-inflated profit margins. Additionally, the software itself helps (or at least, was intended to help) the corps with regulatory compliance.

Company's software was horrendous, but they were making millions selling to this industry, and I quickly came to realize they did so by having a 5:1 marketer:software developer ratio, and selling to people making purchase decisions who were very much not spending their own money.

And as a developer who worked on the project for several months, I have no idea what the end-user experience must have been like, but I can guess.

Problems with their app dev process (largely a personal rant):

1\. Nested Active Record pattern meant developers could not reason about the performance of the code. Simply referencing some Object.Foo property meant than a virtually unbounded number of out-of-process calls would be sent to the db. Management abhorred the notion of doing anything to improve this.

2\. Cloud-based SQL Server hosting was cost prohibitive (customers prohibited multi-tentanting), so mgmt thought they could get their dba to convert the app to Postgres by doing find-and-replace of the SQL strings that were basically interleaved 1:1 with code all throughout the application.

3\. Mgmt would get 3-4 people to work on the same code file simultaneously, in a dynamically-typed language and with no unit testing. "Hydra Bug" doesn't even begin to describe ...

And this company was making millions of dollars selling this software.

</comment><comment><USER71> This is missing the point. End users are clueless about what they need in a software solution. Take a sales pipeline, it's made of sales opportunities. Easy, right? Try to get 50 sales managers across various countries to agree on what a sales pipeline should be and do. I am sure Blackboard has the same issue. Enter consultants. They are not completely useless, they try to get those 50 managers above to agree on 1 idea and process. But depending on how much credibility and trust said consultants have accumulated with the company there is only x% of crap requirements they can say NO to. The x% of crap requirements they have to say YES to from those 50 people for lack of contractual power, credibility and trust is directly correlated to how much the final software solution will suck. And I am assuming the consultants here are good, assume an x multiplier for incompetence.

My point is: there is not enough focus on the business process and people aspect of things. A software solution is packaged consulting and best practices, nothing else. So if nobody is looking at the process and is able to dictate that 1 and 1 only process good luck building something that doesn't suck.

</comment><comment><USER72> Reminds me of my latest experience with the enterprise video conferencing software that will remain nameless.

One very important thing is knowing that your mic is muted. The button for muting the mic has an icon of a mic with a slash thru it (which in other software would mean your mic is off/muted). No. Not with this wonderful piece of enterprise software. I found out by yelling across the house at one of my kids while I was in a conference call with about 100 folks all over the world. It is the color of the button that tells you whether the mic is muted (aside: I am color blind). Later, after reading the online docs this is what I determined about the color of the button:

         * blackish => not being used (?)
         * red => used but currently muted
         * blue => used and on
         * clear => someone else muted you!

If you have to read docs to figure this out then the software is already a failure. Also having a slash thru the mic should definitely imply the mic is off if they did any usability testing!

Also, the mic is _on_ by default! Also, I noticed my video camera was on as well by seeing the little orange light at the top of the screen!!

</comment><comment><USER73> A bit of insight into the complexities of designing enterprise software—I'm a product designer who's been fortunate enough to work on a fast growing product. When I joined our average number of seats was probably about 20. I'd imagine it's now 10x that.

As the post mentions the buyer is not always the end-user and in the enterprise space features are often prioritized for the buyer. That's not necessarily a bad thing, but enterprise product teams should watch out for buyer-focused features that deteriorate the end-user's experience. We spend a lot of time thinking about how to avoid that.

There is also a trade-off between simplicity and flexibility. It is often impossible to do both and larger customers will always want flexibility.

Designing for multi-level hierarchies within organizations is also exceptionally difficult—visibility, access controls, permissions, groups, group hierarchies—these have all been the most difficult features I've ever worked on.

I have immense respect for the product teams at Salesforce, Microsoft, SAP and the other enterprise software companies. The stuff is not easy.

</comment><comment><USER74> I needed to do a bit of searching to realise that Blackboard is a software product and not what the teachers used to write on in school with chalk.

</comment><comment><USER75> The real reason is that different businesses have different needs. No one company knows all these needs in the beginning, so they build and keep tacking on to their existing solution. They can't easily refactor and break UI changes for their existing clients, so it's end up a big ol mess of everything.

Given everything most enterprise companies know, they can design cleaner simpler software, but the reality is there's no time to stop when you have a business to run for the big ol design. When that is done most of their customers are pretty unhappy, something as simple as changing UI change can be very expensive for your clients, they might have to retrain thousands or tens of thousands of their users. Something as simple as an upgrade, if not a zero time upgrade can affect tens of thousands of users. Enterprise is not as stupid as folks make it out to be. There's a reason they got to being enterprise and make a lot of money, they are a different kind of smart.

</comment><comment><USER76> An observation: Instructure (Canvas) was started by a couple of college students; it was born out of frustration with Blackboard.

</comment><comment><USER77> Ok, so this has been locked in as one of the top posts on the front page for a day or two now. I'm sure there is a good reason. Maybe it's an interesting topic, or a lot of people agree with the particular message.

But can we talk about Twitter "essays", as I like to call them, for a minute?

As soon as I see someone chaining together 3-4-5+ (let alone) 10 tweets in a row, I immediately check out & hit the back button. That's not what Twitter is for.

It has a short character limit for a reason. It's meant for SMALL, quick thoughts. Things I can scroll through quickly, consume, and move on to the next bit in my feed. Not long, drawn out opinion pieces.

If you have that much to say, write a blog post about it. Write a post in a relevant sub-reddit. Send an OP-ed piece to your local newspaper for all I care. ANYTHING, buy try to make me follow your meandering, 10+ tweet long, stream of consciousness.

I admit I didn't read past the second tweet in the chain. I read enough to learn this twitter 'essay' was spurred by his college droping blackboard. I remember blackboard in college. It's was pretty mediocre but served it's purpose for it's time & place.

Anyway... I get the reason people do this. It's typically people with a lot of followers (like this guy, with 50 thousand) and they know this is the platform that will get the most reaction for whatever undeveloped, spur of the moment, rant they want to spew out.

Which is my point. Twitter is for undeveloped, spur of the moment rants. And if it spans more than two tweets, then tweeet us a link to your blog post. Or else don't get mad when I get distracted by comments in the third tweet, and go down a rabbit hole of shit talk before I make it to the end.

Well, sorry for the HN comments rant here. I got a little to angry I guess, but at least this is a place where long form comments are acceptable. Twitter is not.

<comment><USER78> They do this because it drives more engagement than tweeting a blog post link.

<comment><USER77> Yeah you're right. It's just been driving me crazy for a while now.

It just feels so clunky. It feels very self-gratifying.

Part of my point is you typically only see this from folks who have a large amount of followers. Of which, a good percentage would be happy to click on a link to writing from someone they're ibterested in.

Seems like they are doing it because they enjoy the reaction from their follower base on the platform.

Don't make us try to follow a 1000 word thesis, in disjointed, 240 character increments... which might all have their own chain of comments.

Let us read the whole argument uninterrupted, & comment @ the end together. I'm only saying the platform isn't suited for long form ideas & discussion.

Again, sorry for ranting. Maybe I'm just in a mood tonight haha.

<comment><USER78> > Part of my point is you typically only see this from folks who have a large > amount of followers.

I think that's reversed. They gathered a following by posting this way.

</comment></comment></comment></comment><comment><USER79> "Here's the kicker, though. It's extremely likely that whichever vendor emerges on top will fall into the same trap. The incentives almost guarantee it."

Why do all bug trackers start out as "simpler than $TODAY'S_DOMINANT_BUG_TRACKER", only to become the thing that tomorrow's bug tracker is simpler than? Why do programming languages almost all start as a "simple alternative to $X", only to be the thing that needs a simpler alternative in 10 years? Why are there so many UNIX shells that start as "simple alternatives" but then grow too large? Why are there so many libraries and frameworks that started out as "lightweight" but grew into monsters?

Because the problem is in the incentive structure of the problem space, not the terrible programmers who just couldn't resist adding so much complexity.

</comment><comment><USER80> All stated reasons are valid, however in the software industry, IMHO, the #1 reason is because in many companies, if not most, the people writing the code are not the people making decisions. It's also easy to see that it's the most successful ones that are lead largely by advanced technical people. From my experience it seems there is always a tension between how highly technical people and the business people make decisions. In some cases this gap is a chasm, and the miscommunication across the technical skill gap is so bad there is a lot of wasted time, effort and money, building horrible software and prioritizing the wrong things. And even when a balance is attained, it either doesn't last long or it makes huge compromises in productivity (basically everyone is happy condoning bad software).

</comment><comment><USER81> I was surprised to not find a single instance of "fear" or "accountability" in all the comments. The major driving force in "Big Enterprise" is putting a price tag on "are you prepared for something to go wrong." Either with bad actors, stupid mistakes, or lack of resources. The overhead and settings required to increase or decrease how much exposure the customer is willing to take is what drives the indu$try. That being said, I don't disagree with a lot of the comments. There is definitely the case of over engineering, but that is a bi-product of a business having to decide between making money or turning away a customer. Great companies have kept it simple while steered their users toward simplicity (which drives down cost and errors for all parties).

</comment><comment><USER82> One thing I'm not following is a few remarks that they don't do usability testing because it is subjective and thus a lawsuit magnet.

We're talking about universities that, as part of their mission, have psychology departments run studies that must conform to ethical guidelines.

Couldn't they evaluate the usability of candidate products by coming up with a list of tasks that a small sample of students and professors must complete, and rate how difficult they are? Take the mean weighted by how critical the features are there's a reasonably objective usability score.

There's still a subjective element, but it can be mitigated by selecting participants at random and having them disclose any potential conflict of interest.

I realize this is no small undertaking, but it's part of their core operational model, so it doesn't seem unrealistic.

</comment><comment><USER83> > _Other baby outfits are meant for parents. They're marked "Easy On, Easy > Off" or some such, and they really mean it. Zippers aren't easy enough so > they fasten using MAGNETS. A busy parent (i.e. a parent) can change an > outfit in 5 seconds, one handed, before rushing to work._

Magnets? That sounds like a terrible idea, since babies are not supposed to be around little magnets that they could swallow (and after a few times through the washer/dryer, magnets could come loose.

Is this really a thing? I have two kids (and one baby, so we're in the thick of it), and I've never heard of this. More importantly, we wouldn't think of buying anything for a baby that has little magnets sewn into cloth.

<comment><USER82> > More importantly, we wouldn't think of buying anything for a baby that has > little magnets sewn into cloth.

This attitude is insane and why so many people refuse to have kids.

<comment><USER83> Can you elaborate? There's no need to put magnets in baby clothing, and there is some risk to doing so. Why do it then?

Also, zippers take 3 seconds to do...if you don't have 3 seconds to zip up the kid, you probably don't have time to change the diaper underneath...

<comment><USER82> It's the histrionic piety that's the problem, not the particulars of the facts. It's in the context of watching parents killing themselves to prove to other parents how their children are their sole focus in life, and that anyone who would do less is an unworthy parent.

It's evident in an argument of the form "we wouldn't think of X," wherein compromise is simply declared out of bounds of any possible discussion.

Prior generations of parents did not do this; they struck a balance between their children's needs and their own needs. That's why there are new terms to describe the modern excess: helicopter parenting and even "snowplow" parenting[1]. These are not healthy developments for parents, children or society as a whole.

[1]: [https://www.fatherly.com/love-money/what-caused-the- college-...](https://www.fatherly.com/love-money/what-caused-the-college- admissions-scam-snowplow-parenting/)

<comment><USER83> Well, the good news is that you've completely misunderstood my comment. There's no histrionics, nor piety. I don't care what other people do for their kids (I said this elsewhere in the thread), and I can imagine that other people, especially people with disabilities, might find the magnets to a useful option. But for me, zippers are easy and work just fine. Therefore there's no need to take even a small risk to replace something that works just fine.

Another consideration is the flood of cheap counterfeits on Amazon (commingled at times), which means that you can't actually trust that the item you purchase is the genuine article (i.e., that it's as well-built as the descriptions say). So

I'm not sure what snowplow/helicopter parenting has to do with any of this, but I'm right there with you that people do too much of that.

If anyone out there decides not to have kids because I don't buy baby clothes with magnets, I think they care too much about what other people do (with their own babies).

</comment></comment></comment></comment></comment><comment><USER84> Honestly one of the factors leading to my burnout and depression was being required to be 'the face of' and promote the use of a piece of enterprise software that just confounded your expectations as a user at every turn.

I tried my best, I went to conferences and met the woman charged with modernising the UI and submitted the extensive feedback she asked for. She left the company 3 months later.

Training sessions were a constant flow of 'yeah that is a bit weird, but that's how it works!'.

I submitted via the vendor's service portal enhancement requests for everything that came up. Two years later they were all closed.

I knew it was hopeless, but I had to try. I wish I'd just refused and found somewhere else to work.

</comment><comment><USER85> This is also why training often sucks: the teachers write the presentation not for the people sitting in the class (who are often required to attend), but for the people who run the training office or the supervisors who order the training.

</comment><comment><USER86> > "OK, back to Blackboard! It's actually designed to look extremely attractive > to the administrators (not professors and definitely not students) who make > purchase decisions. Since they can't easily test usability, they instead > make comparisons based on… checklists of features. "

Former Blackboarder here with +50 implementations in 4 years.

Blackboard and its main competitors -- specially the best ones -- are extremely focused on building atractive UX to instructors because that is where you find most of the critical success factors for a good implementation and ongoing operations. If you have a well thought implementation and operational model, work for administrators can be reduced to a minimum, specially if they have purchased the "managed hosting" pack.

Back to instructors, they are the ones who need to adopt the platform in the first place and then either conform to the type of online course they will be delivering -- in case it is a cookie cutter model -- or be trained and prepared to create and maintain their own courses. Some institutions still opt for a blended model in which professors have more or less liberty to shape the course to their needs, and that would depend mostly on the program structure.

So what the student ultimately sees and uses is the resulting product of a lot of people working behind the scenes. It's hard to generalize and blame Bb, or admins, or even instructors. Blackboard offers a full set of services for "Adoption", and they are delivered by EDU consultants who know very little about Blackboard Learn, the LMS. They know about EDU processes, student motivation and online learning approaches that are LMS agnostic. With that, instructors could be taking a leading role in driving student UX experience through the platform and learning objects it delivers.

IMHO, enterprise software sucks (to everyone) because it is really large, complex and depends on the dedication of an army of people with different skills and viewpoints. Well, that's the glass half empty. You can also say enterprise software is the coolest thing because it exercises and uses the very best of us all the time, a real tech challenge. That's the glass half full.

<comment><USER87> I know a number of college professors. Of the ones who have had to use Blackboard (always imposed from above; they are not being given a choice about adopting it), I have yet to meet one who likes it. They definitely do not perceive its UX as attractive in any way...

</comment></comment><comment><USER88> Enterprise software doesn't have to suck. I worked on databases for oil & gas and similar systems and even though the UI wasn't the best, it was an off the shelf solution that many customers could use their complex problems and regulatory needs. If ease of use is your only metric of quality then lots of Enterprise software sucks, but if you measure quality by how effectively it solves a problem for a customer, Enterprise software might not look so bad. Also blackboard might suck (as a student it didn't strike me as horrible), but there are good tools in the same industry like Piazza.

</comment><comment><USER89> Do you know the huge GitHub banner which gives you a link to there basic tutorial?

I have seen too many people in it NOT clicking this huge waste of space away but instead always scrolling down before doing anything.

User don't care that much apparently.

<comment><USER90> Users theoretically _care_ , they just _don't see it_ ; it's called banner blindness:

[https://en.wikipedia.org/wiki/Banner_blindness](https://en.wikipedia.org/wiki/Banner_blindness)

Also, "In fact, users don't read _anything_.":

[https://www.joelonsoftware.com/2000/04/26/designing-for- peop...](https://www.joelonsoftware.com/2000/04/26/designing-for-people-who- have-better-things-to-do-with-their-lives/)

</comment></comment><comment><USER91> Partially because enterprises are hiring el-cheapo hit-n-run development contractors via Tatas and alikes and all along this middlemen-infested food chain no one really cares about the product, users and customers.

</comment><comment><USER92> ...Red Hat "Enterprise" Linux

Companies buy it because of sales, support, and the warrantee (the ability to hold an "enterprise" with financial resources accountable for mistakes).

Importantly, because large companies use complicated, slow decision making processes with many people involved it is very expensive for them to buy software AND it is extremely expensive to sell them software. Vendors of "enterprise" software can support all the meetings and risk all the expense of that sales process.

The feature checklist exists to provide rationale for the purchasing decision, but it isn't essential to the decision.

</comment><comment><USER93> Threadreader: [https://threadreaderapp.com/thread/1182635589604171776.html](https://threadreaderapp.com/thread/1182635589604171776.html)

</comment><comment><USER94> For my senior project, they had us prototype a replacement for Blackboard. This was not just an exercise: the CS department was seriously considering building and maintaining their own alternative.

<comment><USER95> Yes and it would eventually become the thing that everyone hates...with code written by academics and not software professionals.

<comment><USER94> They already had a custom web interface for submitting and testing code. It was... very HTML 1.0, but at least it wasn't actively user-hostile like Blackboard.

</comment></comment></comment><comment><USER96> Loved this thread but none of this is new. I dont know anyone that likes SAP, Netsuite, Etc. But that doesnt matter. Big companies make decisions to minimize risk and stay on the right side of the law and compliance issues. If the user(s) are miserable and wasting tons of time, no one cares because the company is protected.

I am interested to see if today's new productivity apps (Notion, Trello, Slack) end up in the same vortex of hell as the enterprise tempts them more and more.

</comment><comment><USER97> A regular larger enterprise probably have at least 500 individual software systems, that have evolved over 30 or more years. Around this you have several tens of thousands of employees. This landscape can be compared with an extremely complex machine, or possibly with an organism having equally many organs as there are systems. It is no surprise it sucks because this can never work without constant manual intervention to fix what breaks and does not work as expected.

</comment><comment><USER98> I think one person choosing and others using (and/or maintaining) software is a part of the reason, but another part is that "enterprise software" is essentially a single software package used by multiple users, usually incompatible with standard and open protocols/formats: even when the person choosing it is happy to (and does) use it, it still can be (and often is, IME) awful for others, due to differences in preferences and requirements.

</comment><comment><USER48> Nothing gets developers as excited as having hour long meetings to learn "the correct way" to log a ticket ! O joy the workplace is set for innovation now ! FML

</comment><comment><USER99> Let's take this a step further. Why are the feature checklists used? Because the schools are mandated to pick the lowest bidder through an RFP process. Not the best value, not the most usable, just the lowest bidder. The checklists were introduced as a metric to avoid wasting software that wouldn't meet the users needs, but for years ed-tech companies have optimized for meeting the checklist in the cheapest bottom-of-the-barrel way possible.

</comment><comment><USER100> I really love this thread!

I spent a few years doing indie game development, and one of this biggest lessons that stuck with me was how to think about a product as an experience. To me, game design was mostly that, but focused on making the experience fun, I guess. A huge amount of time and effort went into thinking about what the end user's experience would be like. By instinct, I tend to lean on thinking about the "player's" experience.

</comment><comment><USER101> Enterprise software sucks because the people who develop it do not understand the underlying business processes they are trying to support, and business people who understand the processes do not understand how software can interact with that process.

This leads to things like software being bent to support an existing (shitty) process, rather then redesigning the business process to effectively integrate software effectively to automate the process.

</comment><comment><USER102> > It's actually designed to look extremely attractive to the administrators > (not professors and definitely not students) who make purchase decisions.

Hear hear!

I often put it this way: Enterprise software is sold by having the CIO/CEO playing a round of golf with the sales person.

The CIO/CEO never have to use the software. They have assistants extracting the relevant figures etc.

(For context: I interpret "administrators" not as sysadmin but administrative staff)

</comment><comment><USER103> * Everything is a "workflow" and you often find yourself stuck in some terminal error state for no reason. * No JSON, everything's a page load. * ...or, if there is JSON, it's done badly and you have an unholy combination of janky SPA functionality across multiple pages. * Arcane timeouts * "Disable your popup blocker" * Insane data validation errors. * Poor SSO integration.

I could go on.

</comment><comment><USER104> I think the main point is simple economics. Software is all fixed costs, the costs of making a copy are zero.

So let's say you are making enterprise software, if your market is 1000 companies, you will sell at most 1000 copies. If you charge $100,000 per copy, you will generate at most $100 million if you capture 100% of the market. That's the world of enterprise software.

If you are making consumer software, your target audience is 3 Billion. If you charge $10 and capture the whole market, you will make $30 Billion.

What that means is that compared to consumer software, enterprise software is incredibly expensive while also having 1/300th of the development budget to build the product.

 _Corollary 1:_ Enterprise software will never win head to head versus consumer software, and firms will use consumer software whenever possible.

 _Corollary 2:_ Given the small dev budgets, Enterprise software will skimp on all non-necessary aspects of development to meet the minimum viable product standards before they can ship. This is why your corporate accounting software package has a terrible UI but it has the required functionality and uptime.

 _Corollary 3:_ while consumer software often can fix bugs and roll out patches on a monthly basis for free, enterprise software will fix bugs with delays in years and only with expensive support contracts.

 _Corollary 4:_ Enterprise software is both highly customized and highly rigid. Highly customized in that a lot of Enterprise software development is bespoke for a few key customers because of Corollary 1, and highly rigid in that Corollary 3 means you are stuck with whatever they deliver.

I remember for a while, Cisco had a branch for each major customer. Imagine maintaining hundreds of branches in your code base.

Once you understand the basic economics of the thing, you no longer have to ascribe ill will, incompetence, or ignorance to any actor. It's just "you get what you pay for" and "no one can do miracles" in a product which is all fixed cost.

With those broad facts in mind, most aspects of enterprise software become obvious. I really don't think issues like "someone else buys it, not the user" make much difference. After all, parents buy lots of consumer software for their kids (games) which are amazing and incredibly polished.

</comment><comment><USER105> This post seems to blame the administrators for picking a product based on checklist. The problem is if the administrator is concerned about his end user, he would consult his end users who will end up giving him a checklist of features which would still be a problem. This missing piece is discussions on user experience, which for enterprise software, would need to be done on a case by case basis.

</comment><comment><USER106> Because Blackboard was used as example, I just wanted to note that there are also open-source alternatives: A larger number of German public universities use ILIAS instead [https://www.ilias.de/en/](https://www.ilias.de/en/). While it has its quirks, I find it to be much more usable and flexible than Blackboard

</comment><comment><USER107> "Why posting"

"a long article"

"as a series"

"of tweets"

"sucks. And why it"

"is better to"

"just post a link to"

"a blog article, or"

"medium article."

"hell even a"

"sorry swap those last"

"two before these"

"three around"

</comment><comment><USER108> You'd think publicly funded schools would have a system-wide public software infrastructure project instead of just writing a check to Blackboard every year to infinity.

I always wondered why full time academic-oriented OSS activists like RMS didn't campaign for things like this instead of trying to sell the concept of "OSS in General"

</comment><comment><USER109> This existed much more in the old world of legacy software and perpetual licences but is bad business in a SaaS model.

You end up in a situation where higher ups notice they're not getting the best use out of it so the customer ends up churning. Happy customers with happy end users end up buying more of your software and are much more profitable.

</comment><comment><USER110> This is right on. Enterprise software sucks because the entity paying for it is not the entity using it.

The same issue is one of the factors that causes health care in the US to be so maddening. US health care is essentially enterprise medicine. Patients receive it but insurance companies pay for it, and the two agendas are not aligned.

</comment><comment><USER111> A lot of enterprise software isn't even sold to the people who will actually end up using it (users OR admins). It's some VP talking to another VP agreeing on terms/pricing for "good enough/checklist" and "implementation" costs so it will look good on their yearly review.

</comment><comment><USER112> What's wrong about this is only that users like features too. I.e. he's exactly right that the features checklist leads enterprise software selection processes astray. But I've participated in lots of them that have real users in the room and even then, the features checklist wins.

</comment><comment><USER113> End users should use UX user interface first principle and code an open source alternative thats better. Ie gather enough frustrated end users and create something better.

Tools like Moqups or Balsamiq to create user interface prototypes by designers.Then open source is created from these prototypes.

</comment><comment><USER114> At my university, I think they used to use blackboard, but we have since migrated to a homegrown solution, partially built by students. Some professors also use Instructure. I think the consensus among the students is, however, the homegrown solution is better.

</comment><comment><USER115> I think best solution will be, just like every business have accountant, every business will have software designer and a easy to use software that can do whatever it was asked to do, a cloud based software, with complexity and skill of excel is enough.

</comment><comment><USER116> As an aside - the author of the post is Princeton professor Arvind Narayanan. I took his free Cryptocurrency course on Coursera and it was superb. He really broke down all of the concepts in an easy to understand way that has stuck with me for years.

</comment><comment><USER117> Why Twitter sucks

</comment><comment><USER118> I think it's also economics. The person who is making the purchase decision is different from the user. Hence, a lot of efforts are spent on courting the purchaser compared to improving the product for the users.

</comment><comment><USER119> I think it would be interesting to answer the counter here: so who is doing enterprise software right?

Maybe they are disguised as a start up and hate the label, but what enterprise software companies are taking the right approach?

BaseCamp? Slack?

</comment><comment><USER120> Enterprise software is the employee cafeteria.

It would never succeed out in the real world.

</comment><comment><USER121> I am a SAP ABAP developer and it was my pleasure to debug a PO Badi the other day ... sigh ... looking at the mess of of their code I was just amazed that it was still running in 2019.

</comment><comment><USER122> [https://en.wikipedia.org/wiki/Principal–agent_problem](https://en.wikipedia.org/wiki/Principal–agent_problem)

</comment><comment><USER123> This is changing though. A fair number of solutions such as Slack are easy enough to use and get a hold of that teams within large enterprises can simply start using them.

<comment><USER124> The problem that companies like Slack face in making inroads in enterprise is that companies like Microsoft dominate the market, and can offer entire suites of products at a discount to keep customers exclusive to their platform.

Microsoft has it's own internal chat tool (which is terrible), but this strategy keeps their clients locked in while the buyers stay happy

<comment><USER111> Pretty much this. We had a stint on Slack in our enterprise. We kept asking for full licensing for it, but the higher ups moved everyone to Microsoft Teams instead. It's not lacking against slack in any way. It really just comes down to if you like the UX, which I don't like for either Slack or Teams.

</comment></comment></comment><comment><USER125> When I was in academia the faculty were on the committees that made such decisions, especially those regarding ed tech. I guess Princeton is a different story.

</comment><comment><USER126> Procurement barriers to entry and bad feedback loops.

</comment><comment><USER127> Tangential: Anybody know who started the "enterprise software sucks" meme? Was it Eric S. Raymond? Paul Graham?

</comment><comment><USER128> Because the sales are done top-down(via executives) rather than bottom-up(via actual users who are picky about the UX).

</comment><comment><USER129> You can make the feature set virtually infinite without forcing a ridiculous UI by just embedding a reasonable API.

</comment><comment><USER130> I invite anyone here moaning about Concur and Blackboard to enjoy using Workday. Puts things in perspective.

</comment><comment><USER131> > There are two types of baby outfits.

1\. baby outfits marketed to people who cannot admit to themselves that they are poor.

2\. baby outfits marketed to people who aren't poor.

The author is making a division between two types of outfits in the first category. The second category has no such division-- those consumers have enough money to pay for a product that looks good on the rack _and_ is ergonomic.

Sorry.

</comment><comment><USER132> From the first tweet, I thought they were talking about the actual chalk-on Blackboard.

</comment><comment><USER133> This comic from the twitter thread sums it up pretty well: [https://twitter.com/jaukia/status/1114044716616753152/photo/...](https://twitter.com/jaukia/status/1114044716616753152/photo/1)

</comment><comment><USER134> My feeling is that it got way better the last years...

</comment><comment><USER135> I now understand why we still use Concur at work...

</comment><comment><USER136> WOW such a big clickbaity title with no substance, generalization of one

</comment><comment><USER137> In my opinion it sucks, because people, who write it screw up even the most simple things. In a lot of such software, you will get a search field for something. Rarely the search field will work as you expect. Here are three examples (beware, rant starting):

1\. Windows search: It will sometimes not find what you are looking for, because it is not able to at least do a "string contains" check, if there are no other results found. How stupid is that? Glad I don't have to use Windows unless I am trying to solve a problem for someone who uses Windows.

2\. Confluence wiki: Nope, sometimes you will simply not find that page, with some word in the title, which you input into the search field. Too stupid a software, to simple check for string contains. Oh and also sometimes your search does not work at all, because some service of Atlassian is offline.

3\. Friend of mine did some work for an insurance company. They had a software to look up customers. You think you could easily find someone by looking for their first or last name? Nope, he had to enter an additional space after the first name, to be able to find the person, which of course was confusing.

So, I as a single person have coded in some projects search fields for applications, but some huge company with dozens or more developers cannot get a simple search field right, while I as a single person can write a search, that allows incremental searching and is functionally complete with "not", "or" and "and" operations on objects. Somehow I doubt the capabilities of the engineers, who wrote the logic for those search fields in the examples I mentioned.

There is also other things wrong with Confluence Wiki:

A while ago they claimed to now support Markdown in their editor. Well, it was a not even half-assed support of Markdown, as most of the things I tried to type in Markdown did not convert to the respective rendered elements. To this day, the editor they have just sucks at Markdown and at times behaves unpredictably. I despise having to put anything in the wiki, because of it's buggyness, sluggishness and bad support for Markdown. How difficult can it be to give me a simple editor and let me type Markdown or another sensible format?

My personal blog has a better Markdown parser, than Confluence Wiki and I did not even have to write it myself.

My self-written wiki uses reStructuredText files for pages, simply put in a directory tree, which gets me document internal linking and cross references to other pages of the wiki and the ability to simply put the wiki into a git repository and have everything version controlled. Oh btw. version control is also F*ed up in Confluence Wiki. Also I can simply "export" any page, by copying its file, while in Confluence Wiki, you cannot even get a proper export of a page. This is of course intentional, to keep customers stuck in their Wiki. No way, that they provide simple means of migrating away. No, better to hold the user captive in their BS software.

I have to agree with some other comment here, which mentioned, that the problem is, that the buyers are not the users. I would happily give my own wiki implementation to people at the job, but people, who make the decision on what is used think, that Confluence Wiki will be better than anything a single person can come up with.

</comment><comment><USER138> Well, not enterprise software only unfortunately, IMAO most software sucks.

</comment><comment><USER139> No one here has mentioned the open source alternatives: Mahara and Moodle.

</comment><comment><USER140> This guy got it completely wrong.

</comment><comment><USER141> You know what also sucks. Long form prose delivered via multi part Twitter posts.

</comment><comment><USER142> Sure, this is true, but it's a totally unoriginal thought:

[https://signalvnoise.com/posts/669-why-enterprise- software-s...](https://signalvnoise.com/posts/669-why-enterprise-software- sucks)

[https://medium.com/@jeffbrydon/why-most-enterprise- software-...](https://medium.com/@jeffbrydon/why-most-enterprise-software- sucks-8f0fd3489f49)

[https://www.reddit.com/r/programming/comments/1v9y55/do_you_...](https://www.reddit.com/r/programming/comments/1v9y55/do_you_know_the_biggest_reason_why_enterprise/)

It took me three seconds to find those by Googling "Why enterprise software sucks". I worked in enterprise software for a decade, and I've heard a thousand versions of this.

It's easy to complain about stuff. It's even easier to repeat complaints that have been made hundreds of times already. It's hard to find solutions. This guy doesn't deserve any credit for reiterating old complaints without any hint of how to fix the stuff he's complaining about.

</comment><comment><USER143> Enterprise software sucks because enterprises suck and the people willing and able to sell to them suck.</comment>


The TSA "saw" my Bitcoin and wanted to count it - <AUTHOR> http://www.bitcoinnotbombs.com/the-tsa-saw-my-bitcoin-and-wanted-to-count-it/

<comment><USER2> Why is the TSA enforcing US Customs law? The "S" in TSA stands for safety. Enforcing finance regulations is definitely outside the realm of transportation safety.

<comment><USER3> The officers handling passports, immigration, and customs are not TSA agents. They are CBP officers. The original post incorrectly refers to them as TSA officers.

</comment></comment><comment><USER4> I'm getting a 509 - Bandwidth Exceeded when viewing the page.</comment>


Solving a Combination Lock Puzzle with JuMP and Julia - <AUTHOR> http://iaindunning.com/2013/combination-locks.html

<comment><USER2> Haskell Solution:

      [(a,b,c,d,e,f) | a <- [39, 90, 75, 15, 57], b <- [9, 2, 58, 68, 48, 64], c <- [91, 29, 55, 16, 67, 8], d <- [22, 32, 25, 40, 54, 66], e <- [41, 14, 30, 49, 01, 17], f <- [44, 63, 10, 83, 46, 03], a+b+c+d+e+f == 419 ]

<comment><USER3> What if you want to solve another matrix?

Do you have to write another program?

<comment><USER4> Could just take all the numbers as command-line arguments or something similar.

</comment></comment></comment><comment><USER5> I also find it fascinating to read the algebraic solutions of others. This algorithm seems to rely on an open source integer problem solver called "CBC" [1]. But is it necessary for a general 'searching solver' of that kind to be used for this particular problem?

The way in which the problem is framed suggests there is a unique solution. The model is presented as a square matrix subject to linear constraints. There are 36 unknowns, being x[1][1] through to x[36][36], each of which is 0 or 1. There is the constraint that the sum of the unknowns is 419. And there are two constraints to ensure that only one number is chosen from each row and each column, which together give rise to 36 constraint equations.

If any one of the latter constraints is replaced by the sum constraint, there is a linear system of 36 equations in 36 unknowns. Is it possible for that system to be constructed and solved directly through matrix inversion?

(For those trying the exercise at home, the number at P[1,2] appears as 90 but from the full problem statement I think it should be 6.)

[1]: [https://projects.coin-or.org/Cbc](https://projects.coin-or.org/Cbc)

<comment><USER6> Unfortunately not. Matrix inversion (or any type of linear algebra, really) deals with real numbers. This problem is nearly a linear program, which can be solved very efficiently, except that some variables are constrained to { 0, 1 }. As a result, it's an integer program, which is NP-hard. Intuitively, this is hard because there are no derivatives (e.g. gradient, Hessian) to exploit in discrete optimization problems.

One heuristic is to solve an IP is to relax the integer constraint to inequality constraints, solve the LP, and round the results. However, this can do arbitrarily poorly on most problems.

</comment></comment><comment><USER7> Algebraic solutions are fascinating. I was hooked on Sage for a week or two solving similar problems. I solved this one using brute force though:

        array<array<int, 6>, 6> tumblers
          = {{{39, 90, 75, 88, 15, 57}, {9,   2, 58, 68, 48, 64},
              {29, 55, 16, 67,  8, 91}, {40, 54, 66, 22, 32, 25},
              {49,  1, 17, 41, 14, 30}, {44, 63, 10, 83, 46,  3}}};

        template <typename It> bool
        solve (It tumbler, It end, int const sum) {
            if (tumbler == end)
                return (sum == 0);
            for (auto const pin: *tumbler) {
                if (solve (next(tumbler), end, sum - pin)) {
                    std::cout << pin << std::endl;
                    return true;
                }
            }
            return false;
        }

        int main() {
            solve (tumblers.rbegin(), tumblers.rend(), 419);
        }

</comment><comment><USER8> As a note, this kind of problem is NP complete in the number of locks because the subset sum problem can be embedded into it.

</comment><comment><USER9> not quite sure i understand the problem, but here's one Mathematica approach:

      m = {{39, 90, 75, 88, 15, 57},
         {9, 2, 58, 68, 48, 64},
         {29, 55, 16, 67, 8, 91},
         {40, 54, 66, 22, 32, 25},
         {49, 1, 17, 41, 14, 30},
         {44, 63, 10, 83, 46, 3}};

      Select[
       Extract[m, #] & /@ Transpose[{Range[6], #}] & /@ Tuples[Range[6], 6],
       Total[#] == 419 &]</comment>


API + JavaScript & PHP SDK for Building Travel Apps - <AUTHOR> https://addtotrip.co/home/Developers We built a simple to use API for building social and geo-location travel apps of all sizes and sorts.   Add to Trip https://addtotrip.co It's open(free) to use and build on for now.  We also have a Hackathon going through the end of the month for those interested  https://addtotrip.co/hackathon <comment><USER2> Momentum is having at Hackathon: We're hosting a Geo-Social Travel Hackathon to find out who can develop the coolest location-based application. <https://addtotrip.co/hackathon>

</comment><comment><USER3> What kind of apps can you build?</comment>


Show HN: Election Analytics from the University of Illinois - <AUTHOR> http://electionanalytics.cs.illinois.edu

<comment><AUTHOR> Hey HN! We're no Nate Silver, but the Election Analytics group at U of I has been working really hard on relaunching Election Analytics. It aims to be a bit more academic than the news org sponsored election insights. Can you give me some feedback? What rules, what drools, and what do you want to see in 2016? Check in often, we post daily updates as polls are released.

Thanks a ton! Taylor</comment>


Too Many Cooks – Exploiting the Internet-of-TR-069-Things (2014) [video] - <AUTHOR> https://media.ccc.de/v/31c3_-_6166_-_en_-_saal_6_-_201412282145_-_too_many_cooks_-_exploiting_the_internet-of-tr-069-things_-_lior_oppenheim_-_shahar_tal <comment><USER2> This is one of my favorite C3 talks. I wonder how many TR-069 services are still online? There has been a _lot_ of IoT exploitation and abuse since then.

</comment><comment><USER3> Slides: [https://fahrplan.events.ccc.de/congress/2014/Fahrplan/system...](https://fahrplan.events.ccc.de/congress/2014/Fahrplan/system/attachments/2525/original/too- many-cooks-exploiting-tr069_tal-oppenheim_31c3.pdf)</comment>