TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Ask HN: What does “enterprise software” get right?

4 pointsby christensen_emcabout 10 years ago
I hear a lot about how enterprise software can learn from startups, is there anything startups can learn from enterprise?

3 comments

6502nerdfaceabout 10 years ago
Having built a number of systems for a medium-large enterprise, I often chose to build on solutions from &quot;enterprise&quot; vendors because they had the best answers to these questions:<p>- will it integrate easily with our existing LDAP database of users and groups?<p>- can it authenticate users using our existing Kerberos infrastructure, via SPNEGO, HTTP Negotiate, or whatever is appropriate?<p>- were authentication and authorization more than afterthoughts in its design? Is authorization fine grained enough?<p>- can non-technical users administer it without bugging me all the time?<p>- if it needs to talk to the outside internet (updates, plugins, whatever), can I make it do so through a Kerberos&#x2F;Negotiate authenticating HTTP proxy that MITMs everything? Will its outbound requests leak sensitive internal information (Referrer headers, internal host names, etc.)?<p>- can I get a license for perpetual use, with source code? (If the vendor goes bankrupt, at least I still have the source)
mindcrimeabout 10 years ago
This strikes me as false dichotomy. &quot;Startups&quot; and &quot;enterprise software&quot; aren&#x27;t two different things. There are, for example, startups who are vendors <i>of</i> &quot;enterprise software&quot;.<p>That said, to the extent that I kinda get what you&#x27;re asking, I&#x27;d say that software typically classified as &quot;enterprise&quot; tends to excel at certain things:<p>1. Stability. Now this ideal isn&#x27;t held up as much as it used to be, but for the most part, high quality enterprise systems are designed to never go down, or if they do go down, they have failover mechanisms or some other means of making sure that transactions don&#x27;t get lost, etc. There&#x27;s definitely a dichotomy here in terms of pushing for the opposite of &quot;move fast and break stuff&quot; in that &quot;breaking stuff&quot; is not supposed to happen and people are willing to sacrifice some nearness to the bleeding edge, in order to not break systems that the business depends on.<p>2. Integration. Many &quot;enterprise&quot; systems live in complex environments that have accreted all sorts of cruft and complexity over the decades, possibly as a result of mergers and acquisitions, regime change, etc. As a result an &quot;enterprise&quot; system often has to be able to &quot;talk to&quot; a HUGE array of disparate systems with many protocols, formats and interfaces.<p>3. Flexibility. Rule #1 is &quot;business requirements change&quot;. And when the requirements change, the software has to change. This is why &quot;enterprise&quot; systems have things like the oft-derided &quot;incredibly dense XML configuration files that allow the system to be reconfigured to do something completely different&quot; or have embedded programming languages built right into the system, or have radically denormalized database schemas, etc. It&#x27;s all about making it possibly to mold the system to fit the new requirements without having to rewrite it from scratch.<p>Of course, as you can imagine, when you combine those factors, you can get some pretty complex, impenetrable and obtuse stuff as a result. This is largely why &quot;enterprise sofware&quot; gets a bad name. But really, it&#x27;s all about trying to write software to deal with the messy complexity of the real world.<p>Anyway, what can a startup learn from that? Well, I think all three of the factors mentioned above are actually important for <i>any</i> software company &#x2F; service. It&#x27;s just a question of how much you weight each one. In theory, if you&#x27;re building a &quot;cat sharing photo social network site&quot;, then maybe you don&#x27;t need the same degree of stability as if you&#x27;re building the order processing system for Amazon.com. But if your site is down too often, your users will gravitate to some other site. You can probably work out how the other factors have to be analyzed in similar fashion.
评论 #9535086 未加载
MichaelCrawfordabout 10 years ago
wealthy consultants.