Jump to content


 


Register a free account to unlock additional features at BleepingComputer.com
Welcome to BleepingComputer, a free community where people like yourself come together to discuss and learn how to use their computers. Using the site is easy and fun. As a guest, you can browse and view the various discussions in the forums, but can not create a new topic or reply to an existing one unless you are logged in. Other benefits of registering an account are subscribing to topics and forums, creating a blog, and having no ads shown anywhere on the site.


Click here to Register a free account now! or read our Welcome Guide to learn how to use this site.

Photo

Programming Languages for these goals?


  • Please log in to reply
6 replies to this topic

#1 auto1571

auto1571

  • Members
  • 296 posts
  • OFFLINE
  •  
  • Local time:10:06 PM

Posted 25 July 2015 - 07:00 PM

Okay, well I have some goals regarding some of the things I would like to make in the future. One of my biggest goals is to try and make my own security software but I a am a long way from this yet. I am currently and learning malware removal and would later like to learn malware analyses. I also think that in order to make any security software I am going to also need to learn all the ins and out of Operating Systems. I have already signed up to a CompTIA course that I keep accessing on and off; I really do need to stick to that and complete it.

 

However until then I would like to dabble in gaming applications (software or web based gaming apps), virtual assistants (aka help bots). However I am still not sure what language to go for. At the moment I am thinking either Python or C#. Both of these languages have become very popular I have noticed. However with Python I think you can things for both Linux and Windows whereas I don't think you can do that with C#. Furthermore from my understanding these languages are good because of them being modern and simple. And it makes sense to use something that is now modern and designed with simplicity in mind. Also if I remember correctly one or two coders have said that learning some of these modern languages is good stepping stone for a career in that area. However I still can't decide between whether I should use python or c#. And I am right in thinking that Python can cater for both software and web apps right?

 

So what are your views on this? Also if that is some other specific language that you'd recommend for what I am saying please state so and why.

 

Why I am at it I also remember some coder saying choosing a program language is like choosing a horse lol.

 

Anyway over to you.



BC AdBot (Login to Remove)

 


#2 Billy O'Neal

Billy O'Neal

    Visual C++ STL Maintainer


  • Malware Response Team
  • 12,304 posts
  • OFFLINE
  •  
  • Gender:Male
  • Location:Redmond, Washington
  • Local time:02:06 PM

Posted 27 July 2015 - 11:28 AM

Programming language doesn't matter very much. If you want to learn operating systems or compilers eventually you're going to need to learn a systems programming language, like C, but that doesn't mean you should choose C as a starting language.

When you're at this stage the most important thing is learning how to take problems and break them into abstract pieces that machines are able to solve; that's independent of programming language. Things like "video game" or "security software" or "operating system" or similar are projects typically attacked by tens or thousands of programmers for years. I'm not saying don't attempt these things; even if you dig in and decide not to continue you'll learn things. I'm saying it to give you an idea of the level of abstraction you need to be thinking about. For example, see Eric Lippert's post on division and rounding: http://stackoverflow.com/questions/921180/how-can-i-ensure-that-a-division-of-integers-is-always-rounded-up/926806#926806

Good intro-to-programming instruction will teach you to think about these things; they are far more important than things like "an if statement is followed by parenthesis and curly braces in language XYZ."

Billy3
Twitter - My statements do not establish the official position of Microsoft Corporation, and are my own personal opinion. (But you already knew that, right?)
Posted Image

#3 auto1571

auto1571
  • Topic Starter

  • Members
  • 296 posts
  • OFFLINE
  •  
  • Local time:10:06 PM

Posted 28 July 2015 - 04:51 PM

Thanks for that information. I have since found something that seems fun and that is Lazarus and pascal. The online support for these are very extensive. I was looking through the video tutorials by school freeware. However even though I agree that there is some benefit to those video tutorials I don't think that's the best way of learning, at least not for me anyway. I like to first be explained stuff and then given tasks to do which I have to work out myself, much like how they teach you at code academy. However code academy seemed to cater for mostly on web based languages.

 

In any case as for Lazarus I do believe they have tutorials somewhere which help you to do things for yourself. I also noticed a pascal course but that costs about more than 120 bucks think.

 

Also btw if you know of any other interactive coding courses online like code academy that cater for software or both software and web based stuff please state so. Thanks.



#4 auto1571

auto1571
  • Topic Starter

  • Members
  • 296 posts
  • OFFLINE
  •  
  • Local time:10:06 PM

Posted 30 July 2015 - 04:47 PM

Sorry but I forgot to also ask then if you'd recommend any general introductions to programming. Also is it worth also looking into computer science introductions? Thanks.



#5 gigawert

gigawert

  • Members
  • 1,304 posts
  • OFFLINE
  •  
  • Gender:Not Telling
  • Local time:02:06 PM

Posted 01 August 2015 - 06:26 PM

If you want to do graphics, I would not choose Python. :|


John 3:16

 "God loved the world so much that He gave His uniquely-sired Son, with the result that anyone who believes in Him would never perish but have eternal life."


#6 marcoose777

marcoose777

  • Members
  • 63 posts
  • OFFLINE
  •  
  • Gender:Male
  • Local time:10:06 PM

Posted 02 August 2015 - 07:52 AM

Wow, that's some set of goals. Gaming, security. You couldn't choose two more disparate fields of interest. C# is available on linux via Mono; support and features may not be comparable with M$'s offerings, as you would expect from a language developed by micro$oft. For security you really have your work cut out, I do hope you have no interest in a social life because you have some catchy uppy. Billy rightly mentions that knowledge of OS level programming would be a requisite, and you can add C++ to the C - windows 7&8 are both largely C++ ventures. Also some low level systems programming wouldn't be bad; think assembly both AMD and intel flavour. Python could be useful as there seems to be a growing interest in python tools for security applications both white and black hat. Gaming is a whole field of it's own, try to remember that a lot of current development is aimed at mobile platforms, and web based gaming, there I just heaped another ton of stuff on your TODO list ranging from web app development to learning all about mobile platforms: IOS, and android, content delivery, multimedia, simulation, artificial intelligence, game theory etc... etc... The honest amongst us would advise you to start out with modest goals, and gradually build your skills from there, after all it's easier to add a goal to a modest list than swallow your pride and accept you may have set your sights too high. Personally I've never heard of an IT security expert who codes games too, they're normally one or the other.

 

One unifying feature of programming in all it's shapes and forms is the Algorithm, a good understanding of the design and optimization of algorithms will serve you well. There are plenty of books out there, one I like is by D.Knuth concrete math a foundation in computer science, and it's really rather good at this. It's easy to forget that the compute in computer programming actually refers to a mathematical main stay namely calculation, and that a firm grip of the numbers won't do you any harm. For the masochists there is Knuths opus work: 'the art of computer programming', it's complete, and you should be in a place where you can create your own language and compiler afterward. It will also give you an idea of the scale of the academic area that is computer science.

 

Also be realistic about what learnign materials really offer, by which I mean a book titled 'learn foo bar in 24 hours' means you'll learn some of the very basics in 24 hours not all of it.

 

PS

I'm currently wading through learn you a Haskell, and really rather enjoy the esoteric nature of functional programming.



#7 marcoose777

marcoose777

  • Members
  • 63 posts
  • OFFLINE
  •  
  • Gender:Male
  • Local time:10:06 PM

Posted 02 August 2015 - 08:34 AM

Thanks for that information. I have since found something that seems fun and that is Lazarus and pascal. The online support for these are very extensive. I was looking through the video tutorials by school freeware. However even though I agree that there is some benefit to those video tutorials I don't think that's the best way of learning, at least not for me anyway. I like to first be explained stuff and then given tasks to do which I have to work out myself, much like how they teach you at code academy. However code academy seemed to cater for mostly on web based languages.

 

In any case as for Lazarus I do believe they have tutorials somewhere which help you to do things for yourself. I also noticed a pascal course but that costs about more than 120 bucks think.

 

Also btw if you know of any other interactive coding courses online like code academy that cater for software or both software and web based stuff please state so. Thanks.

 

Python school : here

C school : here

C++ is a superset of C try: here

Assembly: here

You'll also need intel and amd flavours

PHP : here

Java : here

For direct X look here

For opengl try here

General game dev : here

Game engines/platforms: Unity, Ogre, SDL, Unreal, a long list here

AI start here

 

Penetration testing courses: here

General IT security : here

Black hat: here be careful tho

White hatz : here

Info sec may be the same as general IT : here

 

A very good book that'll teach you about the more artistic use of CG: here

 

Google can be your friend

 

PS From a learning POV you have well in excess of 50,000 pages of reading in front of you, that's for starters






0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users