How do you stack?
July 28, 2015 6:15 AM   Subscribe

Where can someone learn about modern technology stacks / enterprise computing? Is there an equivalent to How Computers Work but for corporate computing? If I wanted to see how CRM, ERP, PaaS, ETL, ESP, DMZ, NoSQL, and GitHub might be used together at Walmart / Acme Co., where would I go? Is What is Code the closest I will get?
posted by jasondigitized to Technology (4 answers total) 17 users marked this as a favorite
that what is code is pretty good. hadn't seen it before.

i can answer each of those individually, if it would help.

CRM is software that helps you manage customers. everything from remembering the name of the kids of that guy you have to deal with once a year to managing the data that companies get from "spying" on users through "cookies" on web sites.

ERP is software that helps you manage your business. accounting, planning, forecasting, etc.

PaaS is "platform as a service". it's similar to contracting out who runs your computers. instead of the company managing a bunch of computers, you rent access via PaaS.

ETL is the process you go through when moving data from one system to another. you need to get the data out of the old system (extract), change the format so it's suitable for the new system (transform), and then stick it in the new system (load)

ESP i am unsure of. it's probably enterprise service platform, but i am unsure what that means. the most likely thing is ESB, enterprise service bus. that's software that makes it easier for different systems to talk to each other - either different systems in your own company (perhaps supplied by different contractors, and originally not intended to work together) or to present parts of your company to other companies that you work with (eg interfacing your databases to just in time manufacturing).

DMZ is literally "demilitarized zone". most computers in your company cannot be connected to from outside (from the internet) so that they are safe (safer) from "hackers". but people like customers need to see things like web servers so they can see your site. so those computers, with public services, are in a separate network, called the DMZ, which is less safe from hackers.

NoSQL is (was?) a new approach to databases. it's necessary at huge scales (like google), but became fashionable at smaller scales. it's now dying back.

Github is a place where computer source code can be stored and shared. either amongst people working at your company, or globally.

so, at walmart, they probably have people developing software for their web site. those people might use github to manage the source code (making it easy for everyone to see the latest changes). when they have written something useful then it's used on a web server, which is either a computer in the DMZ, or a computer from a third party PaaS. when someone buys something on the website the software will save that information to a database (probably Oracle SQL, but possibly NoSQL). it will also likely send a message over the ESB other software components - for example, stock control. the ERP software is connected to stock control so that the higer ups can see what is selling. then they can use the CRM to look up the phone number of that supplier, and the name of their young child, before calling them threatening to kill the child if they don't lower prices.
posted by andrewcooke at 7:21 AM on July 28, 2015 [4 favorites]

AFAIK, there is no single place where you can find out how all these technologies work together. In fact, there is so much technology fragmentation within each company itself.

There may be a glossary of the terms though, which may help you.

Some broad categories of Technology areas:

1. Front-end or UI technologies: These are the technology frameworks used to present and interact with users. Javascript (JQuery, Angular JS, AJAX etc are "pre-made" kits), Flash, HTML, PHP, Python are other languages used. Wordpress and other Blogging frameworks use one or more of these languages to provide an easier install/configure/maintain use

COTS products such as SAP, Oracle Siebel CRM, Salesforce etc provide predefined UI layers, but based on the above languages/frameworks.

2. Middle-ware: This is the layer where the whole business functionality is present. For Walmart, as an example, the E-commerce product is usually a COTS engine, connected to an Oracle Database or may use NoSQL (to avoid the traditional DB structures). Other middleware may include App Servers, Middleware connectors such as TIBCO, JMS, MQ Series etc whose job is to route communications between other software.

I am including Analytics, Business Intelligence and Datawarehousing under this, but they are again streams

3. Database - most of us are familiar with this

4. Cloud, SAAS, PAAS and IAAS: Different terms in Cloud computing. For example, Walmart may decide to move its Customer Relationship Management software from Oracle Siebel product to the Cloud by using Salesforce

5. ERP: Started as Enterprise Resource Planning, but now has grown to encompass all Enterprise Software, especially those that are internal. SAP is an ERP, Oracle has its own ERP, Salesforce is trying to be an ERP. These ERP systems come with the UI and parts of the middleware.

6. Networks/Infrastructure: The actual physical infrastructure on which all of these are hosted. You have a network that is internal to the company, an external network that hosts all seervers that allow connections from outside the company (online buyers for Walmart, in this case) as well as secured communications from external to internal.

In summary, there are multiple and growing needs - technology platforms are growing very specialized and niche to address those needs, while other companies, at the same time are trying to make them all-in-one to reduce TCO for their customers.

Mefi mail me if you want to talk about any specific item
posted by theobserver at 7:34 AM on July 28, 2015 [2 favorites]

Best answer: Search for "engineering blog", especially in combination with the terms you want, or general terms like "scaling" and "infrastructure" (or just the term "startup", they tend to do good engineering blogs). Here is a collection of top engineering blogs to get you started.

My personal favorite is Netflix, for example:
posted by rada at 7:44 AM on July 28, 2015 [3 favorites]

ERP is an application. Or a type of application. Or an application suite. As such it's probably made out of a front end, middleware, and backend database at the 'enterprise' scale.

For many small businesses the 'ERP' system is QuickBooks, Excel and Outlook. And Outlook is their 'CRM' as well (client resource management, aka contacts & reminders).

One way to sort of absorb all of this through osmosis is to just surf a lot of Spiceworks forums until you get a feeling for the different subject matter areas, their terminology, and the way they fit together.
posted by snuffleupagus at 7:51 AM on July 28, 2015

« Older Middle aged blues. Just got fired, what now?   |   ID a short scifi/fantasy story - Beetles steal a... Newer »
This thread is closed to new comments.