background preloader

Programming Sucks

Programming Sucks
Every friend I have with a job that involves picking up something heavier than a laptop more than twice a week eventually finds a way to slip something like this into conversation: "Bro, you don't work hard. I just worked a 4700-hour week digging a tunnel under Mordor with a screwdriver." They have a point. Mordor sucks, and it's certainly more physically taxing to dig a tunnel than poke at a keyboard unless you're an ant. All programming teams are constructed by and of crazy people Imagine joining an engineering team. Would you drive across this bridge? All code is bad Every programmer occasionally, when nobody's home, turns off the lights, pours a glass of scotch, puts on some light German electronica, and opens up a file on their computer. This file is Good Code. Every programmer starts out writing some perfect little snowflake like this. There will always be darkness I spent a few years growing up with a closet in my bedroom. This is what it is to learn programming. Funny, right? Ook.

Clean Coder Blog We rule the world. We programmers. We rule the world. We write the rules that make our society work. Think about it; and think about it carefully. It’s certainly true that the Earth turns, the Sun rises, the rain falls, and the tides recede and advance without the aid of software. Without software: Phones don’t ring. We don’t quite understand this yet. Healthcare.gov, Knight Capital, Natwest Bank, and Toyota were wakeup calls; but each time we hit the snooze button and went back to sleep. And if they are smart, it’ll scare the hell out of them. And it should scare the hell out of us too. Imagine what we could do if we were to unite. If we wanted to, if we were willing to organize and plan, there would be no force on the planet that could stop us. Perhaps you think I’m exaggerating? But the fact remains that we programmers are in a position of tremendous power that the people whom we serve do not well understand; and that we hardly understand any better. Think of the military.

6 Steps to Becoming a Software Developer | Zenput Blog Deciding to become a software developer is a great initial step, congrats! The job opportunities are growing quickly and in just about every industry that you can imagine. The best part is that you do not necessarily have to go to a four year university to become a great software developer to lock down one of these jobs. The web has all the resources you'll need to interact, learn, get support and finally find a job as a software developer. 0. Codecademy - JavaScript coursesCode School - Rails, jQuery, CoffeeScriptTryRuby - Really fun way to spend 15 minutes learning some RubyTreehouse - Web design (CSS, CSS3, HTML, HTML5, Responsive Design), web development (HTML5, JavaScript, and Intro to Programming), and iOS (build iPhone and iPad apps) 1. University CoursesNon-University Resources Books 2. 3. 4. [Bonus] 5. Hacker School - once you're quite good at what you do, the next level is to attend hacker school and become even better at it!

Fabien Sanglard's website: Deep magic explained. codebabes.com | Learn Coding and Web Development the Fun Way SimpleDateFormat Formats and parses dates in a locale-sensitive manner. Formatting turns a Date into a String, and parsing turns a String into a Date. Time Pattern Syntax The main reason you'd create an instance this class directly is because you need to format/parse a specific machine-readable format, in which case you almost certainly want to explicitly ask for US to ensure that you get ASCII digits (rather than, say, Arabic digits). To specify the time format, use a time pattern string. The number of consecutive copies (the "count") of a pattern character further influences the format, as shown in the table. Fractional seconds are handled specially: they're zero-padded on the right. The two pattern characters L and c are ICU-compatible extensions, not available in the RI or in Android before Android 2.3 (Gingerbread, API level 9). Five-count patterns (such as "MMMMM") used for the shortest non-numeric representation of a field were introduced in Android 4.3 (Jelly Bean MR2, API level 18). Sample Code

Level-Up Your Machine Learning Since launching Metacademy, I've had a number of people ask , What should I do if I want to get 'better' at machine learning, but I don't know what I want to learn? Excellent question! My answer: consistently work your way through textbooks. I then watch as they grimace in the same way an out-of-shape person grimaces when a healthy friend responds with, "Oh, I watch what I eat and consistently exercise." But why textbooks? In this brief roadmap, I list a few excellent textbooks for advancing your machine learning knowledge and capabilities. Also, if you want alternative learning resources, Metacademy is at your disposal as are all of these textbooks. My sister, an artist and writer by trade, asked me how she could understand the basics of data science in a nontrivial way. Expectations: You'll understand some common machine learning algorithms at a high-level, and you'll be able to implement some simple algorithms in Excel (and a bit in R if you get through the entire book).

How to link with the correct C Run-Time (CRT) library This article was previously published under Q140584 There are six types of reusable libraries: Static Single Threaded Library (Debug/Release)Static Multithreaded Library (Debug/Release)Dynamic Link Library (DLL)(Debug/Release)Note Each library has a debug version and a release version. The DLL is multithread-safe and a single-thread version of the CRT library is not provided for DLLs. If the reusable library or any user of the library is using multiple threads, then the library needs to be a multithread-safe library type. Note Debug libraries and compiler switches /MLd, /MTd, and /MDd are only available in Visual C++ versions 4.0 and later. The following table shows which compiler switch should be used for building each of the six types of reusable libraries (all DLL types are multithread-safe). You can view an object module to determine which switch was used when it was built by using this command: dumpbin /all <object>.obj Look in the section titled RAW DATA #1. Sample code

The Codist: Lessons From A Lifetime Of Being A Programmer Published: 09/06/2014 Over my 3 decades of being a programmer, I have learned a few things. Here are a few goodies. I bet I can make more. Customers only know what they want after they see it. I learned this in my first job. Given enough time all security will fail. Security in today's world is incredibly challenging to get right. Given that your security will fail the outcome depends on whether you planned for that situation ahead of time. If you assume an attacker will breach your defenses eventually you need to plan for what will happen then. Good security is not an expense but a strategic asset; bad security is an expensive kick in the assets. All throughout my career I've heard people complain about how complicated or expensive it is to do security right, yet when it fails you can wind up losing billions of dollars more. It's hard to make something complex that looks simple but it's easy to make something complex look even more complex. Quality is best measured at the customer.

Java SimpleDateFormat - Convert a Java String to a Date (Java String to Date conversion) By Alvin Alexander. Last updated: Jun 10, 2014 Summary: A Java SimpleDateFormat (date formatting) example, showing how to convert a Java String to a Date. In an earlier example I showed how to use the Java SimpleDateFormat class to convert from a Date to a String, but you can also use the Java SimpleDateFormat class to convert in the opposite direction, from a given Java String to a Date object. SimpleDateFormat - Java String to Date conversion, example source code Here's the source code for a complete Java SimpleDateFormat example that demonstrates how to convert from a given formatted Java String to a Date object: SimpleDateFormat Java String to Date conversion - discussion As you can see from that example, the steps to convert from a given Java String to Date using SimpleDateFormat are: Again, just to drill this point home, the date format we're expecting ("MM/dd/yyyy") must match the format we're given (as it does in "09/22/2009"), otherwise the parse method will throw a ParseException.

Stuff that every programmer should know: Data Visualization If you're a programmer and you don't have visualization as one of your main tools in your belt, then good news, you just found how to easily improve your skill set. Really it should be taught in any programming course.Note: This post won't get you from zero to visualization expert, but hopefully it can pique your curiosity and will provide plenty of references for further study. Visualizing data has two main advantages compared to looking at the same data in a tabular form. The first is that we can pack more data in a graph that we can get by looking at numbers on screen, even more if we make our visualizations interactive, allowing explorations inside a data set. This is useful also because it means we can avoid (or rely less on) summarization techniques (statistics) that are always by their nature "lossy" and can easily hide important details (the Anscombe's quartet is the usual example). What's that? - Good visualizations The main objective of visualization is to be meaningful.

IDA: About What is IDA all about? IDA is a Windows, Linux or Mac OS X hosted multi-processor disassembler and debugger that offers so many features it is hard to describe them all. Just grab an evaluation version if you want a test drive. An executive summary is provided for the non-technical user. Getting IDA IDA is available for many platforms, and can be licensed under different terms. Support & Community We have placed a sensible amount of support links and documentation online that can be valuable both to new, and advanced users. Additionally, our user board is a valuable source of hints and tips for the IDA Disassembler. Technical Documentation Intro to the IDA Debugger. Screenshots Ask HS: What will programming and architecture look like in 2020? This topic has been ripped directly from Lambda the Ultimate's What will programming look like in 2020? post. They are having a lively discussion and if you are interested in flexing your holiday thought muscles we might have a good discussion too. Eight years is a difficult prediction horizon. It's too short to simply project out current trends and it's too long to discount potential technological breakthroughs coming to market. Some of my lousy predictions: Programmers Will Form Guilds Around New Gamified Training HubsThe Web Will Become More Closed Before it Becomes More OpenNot Everyone Will Become a ProgrammerFocus Will Shift to Creating Bigger People Instead of Chasing Big Ideas Programmers Will Form Guilds Around New Gamified Training Hubs I was reading a book called The Merchant of Prato, the fascinating story of a rich merchant during the Renaissance, drawn directly from his own voluminous records and letters. Much was different as well. Will this happen?

Java SimpleDateFormat example - Convert a Date to a formatted String (Java Date to String conversion) By Alvin Alexander. Last updated: Jun 14, 2014 Summary: This tutorial demonstrates how to use the Java SimpleDateFormat class to convert a Java Date to a formatted String. The Java SimpleDateFormat class provides lets you easily convert (a) between a Java String to a Date or (b) perform the opposite conversion, from a Java Date to a String. In this article we'll at several different ways to convert a Java Date object to a nicely formatted String object, and in another article we'll look at a couple of nice ways for converting in the opposite direction. Our first Java SimpleDateFormat example In our first example, we begin by getting today's date (as a java.util.Date object), and then we'll create a Java SimpleDateFormat object to define the custom format we want for the date after it's converted to a String. Here's the source code for a complete Java SimpleDateFormat example class that demonstrates this custom date formatting approach: yyyy-MM-dd-hh.mm.ss

Related: