What is devops? [closed] - culture

It's difficult to tell what is being asked here. This question is ambiguous, vague, incomplete, overly broad, or rhetorical and cannot be reasonably answered in its current form. For help clarifying this question so that it can be reopened, visit the help center.
Closed 10 years ago.
What is devops? It has something to do with combining dev and ops but I don't get it.

It's not about "combining" Dev and Ops, that's just the word for it as, I think, it was coined by Patrick Debois. As stated above, it's about providing the scaffolding or structure, and the cultural change to accept intermingling of Dev-side and Ops-side talent, to allow you bridge the DevOps gap. What they used to call "over the wall" or "over the transom" delivery of application code to IT to "take it live."
This wasn't a big problem when you had one gonzo big release every 12 months or so. With Agile Methodology and with cloud infrastructure, however, you can now have releases occurring every couple of weeks and into a (private or public) cloud where things can get complex fast. Flickr did a presentation earlier this year where they can do 10+ releases in a day! That rams a very large workload onto QA and Ops. DevOps refers to the movement and the recognition of the need for planning, coordination and automation tooling that has some Dev components and Ops components.

It's not exactly combining Dev and Ops, but rather providing the platform, tools, knowledge, and resources for these two teams to work better together. With the increase of agile development, IT operations have become a bottle neck in most organizations, and are not capable of deploying applications into the data center on-time and error-free. There is a lot of movement around application release automation (such as Nolio ASAP), and provisioning automation (Puppet, Chef, etc.).

From Wikipedia:
DevOps is a set of processes, methods
and systems for communication,
collaboration and integration between
departments for Development
(Applications/Software Engineering),
Technology Operations and Quality
Assurance (QA)

It's really a culture, or a cultural movement, aimed at removing the barriers between developers and operators (a distinction that tends to be more rarified as technologies like cloud computing, continuous delivery and mass/automated deployment are getting mature and mainstream). If you call yourself a "DevOps", you're doing it wrong!

Related

Best Platform For Facebook Game [closed]

It's difficult to tell what is being asked here. This question is ambiguous, vague, incomplete, overly broad, or rhetorical and cannot be reasonably answered in its current form. For help clarifying this question so that it can be reopened, visit the help center.
Closed 9 years ago.
I realize the question seems very broad and subjective, but I'm mostly looking for suggestions on a platform choice so that I don't paint myself into a corner later on (I'm more familiar with client-side programming, so excuse the lack of proper server jargon).
First: I am building a game. It will be multiplayer, with some real time interaction between players. Obviously, I'm not talking FPS, or even at the scale of a RTS, but something similar to what the Google Channel API does in terms of messaging.
I'm looking for the best Server/Client pairing.
Now, I've come to the realization as a result of my day job, that C# has become by far my best language. I'm also getting very familiar with WPF, so Silverlight seems like a natural extension of that understanding.
From what I can find search-wise, Silverlight is not a popular Facebook app platform. Is there a reason for this?
What's the "standard" client-server pairing? Is it Flash for the front end, what's the back end?
Does anyone have a favorite pairing? Easy to prototype/dev test?
Is there a good clientside platform choice that has an open source game engine, and can also reach a majority of browsers (i.e. the iPad as well as desktops)?
Edit: I have also stumbled upon the Windows Azure Social Toolkit. Anybody have an opinion on using that as a starting place?
http://watgames.codeplex.com/
Most social games use Flash for the front end because of its market saturation, roughly 98% right now. If you use anything else, you will lose potential users for two reasons: 1) some users cannot install the platform you want to use (e.g. a work computer with no administrator access) and 2) some users can, but they don't want to install the platform you want to use.
As for the back-end, there is no "standard" and is more a matter of taste and preference. Use what you're most comfortable with and prefer to code in.
Just make sure whatever back-end architecture you choose allows you to add more application servers and database servers without having to bring the game down. The easiest solution is probably distributed key-value databases (e.g. Cassandra) for this.

Is Entity Framework 4.x the right tool for developing in a brownfield environment? [closed]

It's difficult to tell what is being asked here. This question is ambiguous, vague, incomplete, overly broad, or rhetorical and cannot be reasonably answered in its current form. For help clarifying this question so that it can be reopened, visit the help center.
Closed 11 years ago.
Is Entity Framework 4.x the right tool to use when developing or updating code in a brownfield situation?
What realistic productivity gains can I expect over just writing against the DB?
I would appreciate any opinions.
Maybe? It's going to really depend on the situation.
If you're writing a new module to plug into the app, that's probably the easiest case to use EF because you'll be able to isolate it in that new area. I found massive productivity gains when I switched to it vs writing against the DB directly (or using stored procedures, or whatever). Literally cut the time to do many tasks in half and eliminated a large amount of highly repetitive code.
The big gains for productivity are in things like not having to write classes (since you already have a database you can tell EF to use it and it'll create the entities and classes for you), and then in not having to write queries. I always find writing the highly repetitive queries error prone just due to typos, and your CRUD operations are all taken care of for you.
It's a bit different if you're taking something existing and trying to shoehorn EF into it, and there's a lot of "it depends" in there. It might help you out a lot if there are things that are easy to replace. But if you're going to wind up with a confusing mix where in one function you do some stuff to the DB in EF and then do some more stuff to the same DB by hitting it directly using the old way? For someone else working on the app later it's going to be difficult to understand what's going on and how all the moving parts interact.
Swapping it in also may mean tossing out already working code to hit the DB, so the productivity gain isn't as high as when you're starting fresh since in this case you already have a working solution. Might still be worth it though.

Seeking Reporting tools [closed]

It's difficult to tell what is being asked here. This question is ambiguous, vague, incomplete, overly broad, or rhetorical and cannot be reasonably answered in its current form. For help clarifying this question so that it can be reopened, visit the help center.
Closed 11 years ago.
We are looking for a web-based reporting tool solution. Either freeware or commercial would be considered. The requirement is that the web UI would allow user to select various options, and run them against database, which returns data to UI to render a report. Ideally, it should support various popular document format. The reporting tool should support high volume of queries, and produce good performance.
The architecture and system we are using are below:
SQL Server 2008
.NET 4
AJAX-based Web UI
Any idea would be very much appreciated
You could do a lot worse than looking at SQL Server Reporting Services (SSRS) the version that comes with 2008 is good, the version that ships with 2008R2 is better and the upcoming project crescent looks amazing!
The reports that are generated can be displayed in a number of ways. The simplest way is simple URL web reports however there are a number of other options such as the report viewer control that you can use in winform and webform applications. You can also integrate them into a sharepoint library if you need to.
And the best part is if you have SQL server it is free!
Based on second hand recommendation, I'd suggest looking seriously at http://www.tableausoftware.com/. A lot of products have excellent looking feature lists. But I know someone whose opinion I really trust who has introduced a number of clients to that one and has good things to report about the experience.
But there are a ton of companies that have solutions to sell you. You should definitely look around. But, and this is a big but, don't buy into anything based on the sales pitch and the feature list. Instead try to get your technical people talking to technical people at clients who use the software. Try to get honest feedback. Everyone has slick presentations, but most don't really deliver.

Common uses of AI techniques [closed]

It's difficult to tell what is being asked here. This question is ambiguous, vague, incomplete, overly broad, or rhetorical and cannot be reasonably answered in its current form. For help clarifying this question so that it can be reopened, visit the help center.
Closed 11 years ago.
I am a build engineer in my current position but I dabble in applying AI techniques to improve our capabilities. What I am interested in is how your teams use AI Techniques (Pattern Recognition, Machine Learning, Bayesian Classification, or Neural Networks) in real life. I am looking for ideas on other ways of improving our processes and fun projects to start.
Examples of things I have tried:
Naive bayesian classifier for automatically assigning class labels (misdemeanor, felony, traffic violation) to free form text entered by court reporters.
Generated team schedule for the year using a genetic algorithm using a fitness function that assigned demerits for any scheduling conflicts, over / under allocation of team members, holidays, personal time off.
Binary associative memory for quickly querying environment configuration information for all applications deployed to all environments; including URLs, ports, source control location, environment, server, os, etc

Using game of life or other virtual environment for artificial (intelligence) life simulation? [closed]

It's difficult to tell what is being asked here. This question is ambiguous, vague, incomplete, overly broad, or rhetorical and cannot be reasonably answered in its current form. For help clarifying this question so that it can be reopened, visit the help center.
Closed 13 years ago.
One of my interests in AI focuses not so much on data but more on biologic computing. This includes neural networks, mapping the brain, cellular-automata, virtual life and environments.
Described below is an exciting project that includes develop a virtual environment for bots to evolve in.
"Polyworld is a cross-platform (Linux, Mac OS X) program written by Larry Yaeger to evolve Artificial Intelligence through natural selection and evolutionary algorithms."
http://en.wikipedia.org/wiki/Polyworld "
Polyworld is a promising project for studying virtual life but it still is far from creating an "intelligent autonomous" agent.
Here is my question, in theory, what parameters would you use create an AI environment? Possibly a brain environment? Possibly multiple self contained life organisms that have their own "brain" or life structures.
I would like a create a spin on the game of life simulation. What if you have a 64x64 game of life grid. But instead of one grid, you might have N number of grids. The N number of grids are your "life force" If all of the game of life entities die in a particular grid then that entire grid dies. A group of "grids" makes up a life form.
I don't have an immediate goal. First, I want to simulate an environment and visualize what is going on in the environment with OpenGL and see if there are any interesting properties to the environment. I then want to add "scarce resources" and see if the AI environment can manage resources adequately.
Since you said "in theory", that implies you are interested in reading a lot of academic papers on the subject, because I think there's plenty of theoretical work out there, usually supported by proof-of-concept experiments.
I took a class on this 3 years ago, so my knowledge is both introductory and out-of-date, but try searching for something like "neural network language evolution" on Google Scholar*. The simulations in those papers should give you some ideas of what other researchers have tried. Then, a good place to start is to replicate one of the experiments that you find interesting.
Disclaimer: I had to do just that for the class, and it sucked. I decided that I preferred working programs to theoretical experiments. But you said "in theory" so this might be the kind of thing you really like.
*Sorry, I can't remember the exact papers we read.

Resources