CHANGSTAR: Audiophile Headphone Reviews and Early 90s Style BBS

  • December 31, 2015, 09:45:16 AM
  • Welcome, Guest
Please login or register.

Login with username, password and session length
Advanced search  
Pages: 1 2 [3] 4

Author Topic: Learning C#, Tips?  (Read 997 times)

0 Members and 1 Guest are viewing this topic.

Deep Funk

  • Sure is fond of ellipses...
  • Able Bodied Sailor
  • Pirate
  • ***
  • Brownie Points: +111/-3
  • Offline Offline
  • Posts: 2344
  • Born in 1988, eclectic 90-ties!
    • Radjahs2cents
Re: Learning C#, Tips?
« Reply #20 on: June 12, 2015, 09:42:47 PM »

I recommend a disciplined an organized approach. Scattered YouTube videos, PDF files, and trial and error are only going to get you frustrated real fast with a language like C#., especially if you don't have a lot of experience writing programs, doing abstract math proofs, or using other object based languages. (HTML / CSS / Scripting) does not count.

Practice is the most important in learning a language. Gotta first write bullshit programs like Hello World, calenders, list sorting programs. A lot of bullshit programs that don't do anything. The more you practice the better you get. Takes years to be a functional programmer. Takes years and an inherent knack of it to be a good one. It's like playing a musical instrument, not an easy one, but a hard one like violin. C# has all the tedious syntax issues of C, some of the nuances of assembly, and the abstractions of all other object based languages.

I suggest getting to the point where you can write your first junior Monopoly game (smaller board, simple rules, and only for one player) using ascii art as a first milestone.

That is largely my plan. The learning books I work with follow your reasoning. Baby steps, notes, baby steps and more notes for me. I can fast track this process as long as I focus.

Thanks for the advice.
Logged
Few things keep me sane: my loved ones, my music and my hobbies. Few is almost an understatement here...

Marvey

  • The Man For His Time And Place
  • Master
  • Pirate
  • *****
  • Brownie Points: +555/-33
  • Offline Offline
  • Posts: 6698
  • Captain Plankton and MOT: Eddie Current
Re: Learning C#, Tips?
« Reply #21 on: June 12, 2015, 09:48:19 PM »

Oh I forgot to mention... for what purpose?

The platforms and development environments are probably even more important than the language these days. .NET, Java SE/EE, etc. The reason is that a lot of functions and routines that we used to have to look up in algorithm books are built-in to the libraries. Saves a ton of time! This why some people I know won't hire .NET programmers. It's because 98% of .NET people are idiots who couldn't come up with working logic or algorithms to solve a simple problem, like finding the shortest path from point A to point B in a maze.

Actually, the maze program would be another good practice. Write a program that presents a 20x20 matrix. Insert X number of random blocks. Write program in C# to find shortest path from 1,1 to 20,20 (assuming that path is not blocked by randomly placed blocks.) Also, do this in a object oriented way. Don't cheat and write a C program. Write a real C# program.

Logged

Deep Funk

  • Sure is fond of ellipses...
  • Able Bodied Sailor
  • Pirate
  • ***
  • Brownie Points: +111/-3
  • Offline Offline
  • Posts: 2344
  • Born in 1988, eclectic 90-ties!
    • Radjahs2cents
Re: Learning C#, Tips?
« Reply #22 on: June 12, 2015, 11:11:17 PM »

Oh I forgot to mention... for what purpose?

The platforms and development environments are probably even more important than the language these days. .NET, Java SE/EE, etc. The reason is that a lot of functions and routines that we used to have to look up in algorithm books are built-in to the libraries. Saves a ton of time! This why some people I know won't hire .NET programmers. It's because 98% of .NET people are idiots who couldn't come up with working logic or algorithms to solve a simple problem, like finding the shortest path from point A to point B in a maze.

Actually, the maze program would be another good practice. Write a program that presents a 20x20 matrix. Insert X number of random blocks. Write program in C# to find shortest path from 1,1 to 20,20 (assuming that path is not blocked by randomly placed blocks.) Also, do this in a object oriented way. Don't cheat and write a C program. Write a real C# program.


Purpose? A year ago out of curiosity I tried HTML. I liked the fact that I could create something new out of a few lines of code.

The keyword here is "create" and that is my purpose. I want to become a professional software developer. The PC, be it a desktop, laptop or smart device has integrated itself in my life. I enjoy creating something new from scratch with some lines of code, be it for a haiku or a software application. If the haiku-software application reference sounds weird, try Python.

The project goal I have now is to create maths game application in Java. I will make a note of your tips.
Logged
Few things keep me sane: my loved ones, my music and my hobbies. Few is almost an understatement here...

lm4der

  • Able Bodied Sailor
  • Pirate
  • ***
  • Brownie Points: +24/-9
  • Online Online
  • Posts: 222
Re: Learning C#, Tips?
« Reply #23 on: June 13, 2015, 04:44:37 PM »

It's because 98% of .NET people are idiots who couldn't come up with working logic or algorithms to solve a simple problem, like finding the shortest path from point A to point B in a maze.

Actually, the maze program would be another good practice. Write a program that presents a 20x20 matrix. Insert X number of random blocks. Write program in C# to find shortest path from 1,1 to 20,20 (assuming that path is not blocked by randomly placed blocks.) Also, do this in a object oriented way. Don't cheat and write a C program. Write a real C# program.

I'm not sure what the definition of a "simple" algorithmic problem is, but shortest-path problems aren't really trivial.  There's a lot of graph theory that goes into the good solutions.  Now simply solving the maze, disregarding shortest path, that should be easy.  Kind of like sorting algorithms.  Anyone should be able to one-off an algorithm that sorts, but to do it efficiently is something that people have put a lot of research into.
Logged

altrunox

  • Able Bodied Sailor
  • Pirate
  • ***
  • Brownie Points: +10/-2
  • Offline Offline
  • Posts: 137
Re: Learning C#, Tips?
« Reply #24 on: June 13, 2015, 05:10:41 PM »

Purr1n, did you work as a programmer/dev. before going to EC?
Logged
I really don't know what I'm talking about
#7x1neverForget

Marvey

  • The Man For His Time And Place
  • Master
  • Pirate
  • *****
  • Brownie Points: +555/-33
  • Offline Offline
  • Posts: 6698
  • Captain Plankton and MOT: Eddie Current
Re: Learning C#, Tips?
« Reply #25 on: June 13, 2015, 10:40:08 PM »

I'm not sure what the definition of a "simple" algorithmic problem is, but shortest-path problems aren't really trivial. 

Yes they are. Depth search first and breadth search first. The algorithms are simple, among those learned in algorithms 101.
« Last Edit: June 13, 2015, 10:58:32 PM by purr1n »
Logged

Marvey

  • The Man For His Time And Place
  • Master
  • Pirate
  • *****
  • Brownie Points: +555/-33
  • Offline Offline
  • Posts: 6698
  • Captain Plankton and MOT: Eddie Current
Re: Learning C#, Tips?
« Reply #26 on: June 13, 2015, 10:58:12 PM »

Purr1n, did you work as a programmer/dev. before going to EC?

Up to 2002 I did programming work, although less consistent from 1999 onward because I got into web infrastructure and security. x86 assembly, C, VB, Enterprise Java, .NET (early). From 2003, was audit / ethical hacking, although I did a short stint as IT Director at a small community bank for a few years.

I still program for fun. For example at my last horrible job, which only lasted one year, the decision makers decided to implement an audit management system for $100,000 per year. Unfortunately, the system sucked so bad, that everyone worked in Excel anyways, and then spent one or two weeks after every audit copying stuff over. The UI was from hell.

I wasn't going to have any of that so I wrote a bot to screen scrape the content Excel files and paste data over to the system, including checking the right boxes, reformatting according to certain logic (it wasn't one-to-one between Excel and the system). Also, I wrote programs that took "core dumps" (antivirus reports, IDS, patch reports, etc.) and reformatted them into handy "audit process" tables according to our formal audit documentation standards. 

I only pretended to be busy during these times - and no way I was gonna tell anyone I could speed up the work by 30%. (Since in big corporations, VPs protect their turf and their budgets, mainly because they can go on power trips and skull-fuck people who they think have crossed them. I'm mean, really nothing else to do, and some people associate their work with their lives.)

I wrote worms and stuff, for fun. Now I write bots for games. I wrote a bot for SWTOR so I only needed to click the mouse button to attack (most of the time). Would screen-scrape / OCR numbers / cooldowns to choose the right attack / chain for max DPS.

I write a few custom hacking tools now and them. Been doing ethical hacking since 2003.
Logged

lm4der

  • Able Bodied Sailor
  • Pirate
  • ***
  • Brownie Points: +24/-9
  • Online Online
  • Posts: 222
Re: Learning C#, Tips?
« Reply #27 on: June 13, 2015, 11:00:16 PM »

Depth search first and breadth search first. The algorithms are simple, among the learned in algorithms 101.

Oh yeah, good call. Single source directed graph is just a tree.
Logged

altrunox

  • Able Bodied Sailor
  • Pirate
  • ***
  • Brownie Points: +10/-2
  • Offline Offline
  • Posts: 137
Re: Learning C#, Tips?
« Reply #28 on: June 13, 2015, 11:58:58 PM »

eeew VB, I had to do some stuff with it on my job, damn, I sucked at it  :vomit:

Nice, so you're a white hat hacker  ;D

Still don't know exactly what path I'm going to take after finishing the college, but back-end programming and security stuff are my favorite ATM.
Logged
I really don't know what I'm talking about
#7x1neverForget

drfindley

  • Mate
  • Pirate
  • ****
  • Brownie Points: +17/-2
  • Offline Offline
  • Posts: 198
    • http://thomyorkeandcats.tumblr.com
Re: Learning C#, Tips?
« Reply #29 on: June 14, 2015, 07:32:15 AM »

I write a few custom hacking tools now and them. Been doing ethical hacking since 2003.

Have you ever been tempted to do software work in audio? Sometimes I'm tempted to write a non-hateful decent music player (I hate all of them, yes even that one you love, I'm afraid). Other times I'm tempted to hack my Rag to wire up a bluetooth/RF remote control. While there is nothing wonderful in this world that software can't ruin, I wonder what one could do to make audio smarter the way it's helped the Rag and the Yggy. And at the same time given every non-iPod portable *horrible* UI.
Logged
Pages: 1 2 [3] 4