Programming languages for technical writers
October 16, 2018 8:08 AM   Subscribe

If I take a class in C#, will that give me enough knowledge to be able to write APIs and code samples in C#?

I'm a technical writer with over 7 years' experience, mostly with policies+procedures, references, process flows, end-user documentation, and things like HTML/CSS style guides. I am familiar with (have written a few code samples in or modified scripts using) Java, JavaScript, SQL queries, some other bits; but I do not currently know C#. I don't want to be a programmer, but I do want enough knowledge to properly do jobs that require knowledge of writing code samples in C#. Will taking a class in C# give me the knowledge I need to apply for and then do jobs requiring C# coding knowledge? I think it might, but I'm honestly not sure. I don't want to take the class and then apply for jobs if I'm going to need more.
posted by Tailkinker to-Ennien to Work & Money (3 answers total) 4 users marked this as a favorite
C# isn't conceptually much different than Java, even the syntax is similar. You should be able to pick up the language fairly easy, although there are a ton of other things (tools, IDE, libraries, GUI toolkits, SQL interface, etc) that are specific to C# and .NET and the Microsoft ecosystem, and focusing on whatever subset of these things is relevant to your career interest might be a good idea. But this is exactly like Java and its sprawling ecosystem, so you should be okay with a broad overview.
posted by RobotVoodooPower at 8:23 AM on October 16, 2018

I had a whole comment talking about reading up on MVC Controllers in a book like ASP.NET Core in Action*, or taking an hour to see if you can work through this WebAPI tutorial from Microsoft, but instead:

I think you should go visit your local technical college and talk to the dean of the relevant school, or even the person teaching the C# class if you can get in touch, and bounce this off of them. It's entirely possible that the C# class is really a Programming 101 class that happens to use C#, but it's also possible that they're perfectly set up for people like who already know another language. I think it's really going to depend on the institution. They may also have connections to other local resources that would fit what you're looking for.

But if you're comfortable picking stuff up as you go, or learning on your own, there's a lot of great content available for free online. Poking around that Microsoft tutorial site wouldn't be the worst place to start.

*I bought it based on the strength of the author's blog, but haven't read it yet. Check Manning's twitter feed for frequent coupon codes.
posted by Nonsteroidal Anti-Inflammatory Drug at 8:54 AM on October 16, 2018

Best answer: It completely depends on the focus and depth of the course.

There are different levels of coding and design competence that apply depending on the task you're attempting to accomplish. A basic course on a specific language will give you syntax and how to structure an application using the things specific to the platform RobotVoodooPower mentioned. Competence in these things will let you crank out code examples but might focus more on the how and less on the why.

From a design perspective, your background lends well to the API-writing side of things. That's where the why becomes important. The ability to identify specific interactions that should be encapsulated, their parameters, and the lifecycle of data is something that even very technical programmers can stumble on, and it's not anything an intro class will give you. People make the mistake of assuming a developer good at cranking out code will have this knowledge or pick it up along the way, but that's often not the case. They're complementary skills that one person might have -- and both should be done by someone who can write code -- but they're different skill sets.

So to actually address your question: yes, an intro course might get you the ability to write code samples, but API design is a separate skill.
posted by mikeh at 9:00 AM on October 16, 2018 [2 favorites]

« Older On a quest... for flavor   |   YouTube video preview on Twitter and Instagram? Newer »
This thread is closed to new comments.