- Portals
- The Current Year
- ED in the News
- Admins
- Help ED Rebuild
- Archive
- ED Bookmarklet
- Donate Bitcoin
Contact an admin on Discord or EDF if you want an account. Also fuck bots.
Computer science
Computer science is a branch of science focusing primarily on pretty much anything that can be done on a computer. It attracts a wide population of neckbeards because everyone thinks just because they play a lot of video games they will be good at programming. The field of Computer Science ranges from using advanced mathematics to precisely determine why your solution is dead wrong even if you knew how to do it, all the way to banging your head against a metaphorical brick wall for an hour because your program won't compile only to discover it was because you added an extra curly bracket.
Requirements
- At least one or more of the follwing: Neckbeard/Fedora/Macbook covered in obscure tech stickers/BMI of 36+
- A Pair of glasses to adjust on your face anytime you say the phrase "Well Actually..."
- A vast and superior knowledge of your favorite language which you will use whenever it is possible, and also when it is not possible
- Complete lack of sex drive, as the three or less females in your major will be not only repulsive, but probably already have a neckbeard boyfriend with a katana
- 4 or more Github accounts because you keep forgetting the password
- A really great idea for a revolutionary new app, it's like an uber for starbucks or something, you'll let the nerds in India figure out to to code it...
- A healthy diet of memes
- Phone to play with in class
Software Development
This is what actual coding is. You will soon discover that it is a tedious, time consuming, head smashing, bureaucratic, black hole of time that is 100% necessary if you don't want to ship a steaming pot of spaghetti code. Fortunately, other people have pinpointed exactly how much this sucks so the whole process is pretty streamlined. This is called the development cycle.
- Initialization The customer approaches the company in hopes that they are desperate enough to make their ludicrous fantasy into a marketable reality. The idea is pitched to a bunch of upper level managers who don't even understand how to close the tabs on their phone, let alone know how to do any of the actual work required. After a large amount of false promises and exaggerations, the general idea of the product is set so that it can be mangled and distorted properly later down the line.
- System Concept Development The least incompetent people working on the project are gathered to discuss the details of how exactly they will go about assembling this shit sandwich. Big questions are answered, such as "What language should we use?", "How should we handle the back-end?", "How should we outsource of this as much as possible?", and "Why does my soup keep disappearing from the break room fridge?".
- Planning This is the stage where deadlines are set so that they can inevitably be missed, and where teams will be divided into subgroups. This stage is mostly so that the people involved can feel like adults and waste more time in board meetings. It's biggest function is to establish more stress in the environment. This part involves a lot of writing stuff down and woefully attempting to hold people accountable for their actions.
- Requirement Analysis Research is done to find out what the hell people who use the program actually want, since programmers have a very loose grasp of daily life and the general behavior of the world population (In the same way that engineers would design everything for engineers if they could). User specification is nailed down to the point where literal interpretation trumps all forms of common sense and established norms.
- Design This part of the process involves a lot of scientific-looking doodling which in reality is just a way to stop you and your lazy co-workers from taking shortcuts during development that will end up biting you in the digital ass. In order to write good models, you must assume that your dumbest co-worker has just had a stroke and then consumed 5 units of alcohol, and he is the one responsible for implementing that model. If you hold yourself to that metric, then the development process will be that much easier. Writing well thought out and detailed models will significantly reduce your workload and bug-fixing later in time, so naturally most people don't take it seriously.
- Development This the actual coding part of the life cycle in which your mental stability will be tested. You must actually turn all of the design models into hard code that will inherently have more bugs than a village in Africa. In order to actually create a working product, you will have to constantly test and debug your code as you write it. Testing is a whole domain on its own but mostly just concerns the fact that if you put a button on your app that says "DO NOT PRESS" someone will press it. So you have to think of every possible way an idiot will break your program, because if they can they will.
- Integration Testing
See Also
Computer science is part of a series on Aspies. | [Sperg out] |
Computer science is part of a series on Visit the Softwarez Portal for complete coverage. |