Jump to content

Darkfeign

Member
  • Posts

    193
  • Joined

  • Last visited

Everything posted by Darkfeign

  1. If you want to get starting in programming properly, on linux you have pretty much every possible option. I'd always suggest Python as a good place to start as it's high level enough to start making things right away, while allowing you to grasp some of the concepts useful in all other languages. You might also want to look at some functional programming which is quite different from the typical imperative programming model; Haskell, Common Lisp (CLISP on linux) are good options.
  2. For more general computing problems to solve, I'd suggest looking at: http://projecteuler.net/
  3. I can't offer any personal experience as I'm a postgraduate student, but I thought i'd provide a little insight from my experience at uni along with the experience of previous friends who now work as software engineers. You're right in being a little cautious in expecting a software engineering role to mimic univeristy. Most of our projects were individual, but in second year we had two large projects to do. One in python (where a couple people took over programming and the other team members focused on design/user interface etc.). The second was in Java and did require a fair amount of communication across the team but I still feel like, at that stage, you're more likely to wing it and implement parts that you can and have a person or two at the centre to bring all the components together properly. This is certainly not how it works as a software engineer. From what I understand from friends who have since left university and are employed at some pretty well known software companies (BT for one), pretty much everything you do is part of a team in some aspect. When you're working on larger systems, project managers will have input as to the expected design of the system, where the interfaces are all pretty much decided and so when your team begins development, while you may be given a section of the system to implement, you are still expected to communicate with your team to ensure your part of the system has been thoroughly tested and most importantly, decent consideration has been spent on the interface to ensure its compatibility with the other parts of the system. This obviously changes depending on the size of the project/organisation but you will be programming to specifications of the expected system, and when you feel this needs to change you will be discussing a lot with other members of the team to decide on the process/what to modify in the design etc. and will inevitably have people explore and research your code for various reasons to understand your methods and its functionality. I'm not sure this is particularly helpful as I can't give you an insight into the typical day of a software engineer but you're going to be a part of a team for sure, whether taking on your own tasks, or undergoing 'paired programming' and other software dev. paradigms depends much upon the organisation itself I guess. If you really enjoy programming, then find a job/environment that suits you best and while it may not always be exactly what you want to do, I'd suggest continuing to develop your interests outside of work (personal projects, open source projects etc.) to lead you to what you really want to achieve in a job.
  4. I wouldn't even use an IDE for python, least of all something as slow and bloated as Eclipse. I'd suggest either looking at the the python specific IDEs, or just using something like Sublime Text as python is pretty easy to debug so you shouldn't have any trouble writing in a text editor.
  5. I'm pretty sure he means C, as C is used quite often in Electrical Engineering because it's a tiny language to fit on the small amount of memory available on embedded systems. If not, I wouldn't really suggest C# over Java. ^ This pretty much. if you're doing well with C++, stick at it. It's so widespread and a lot of people avoid it a lot today. Even at university we saw it for a semester only, and the rest of the time we were stuck with Java which is great, but if you really understand C/C++'s low-level mechanics, that'll help you in understanding how to control your Java program more for efficiency. Java is great for avoiding the low-level and focusing on Object-Oriented methods and design patterns. If you can study design patterns and the high-level software engineering through java, and then get a decent understanding of C++, you'll be pretty well set in the future. Other languages will come easy to you then.
  6. Well, it kind of is the future, given that Python 2.7 is the final release of version 2 of Python.. so yeah. By future-proof I simply meant not having to learn Python 2 and then when the vast majority of developers leave it behind in favour of supported version that will continue to receive updates, being stuck with a less favourable version of the language.
  7. By all means, I would agree to keep mindful of the incompatibilities between the two versions, but I would always recommend picking up the newer version for future-proofing. I think most libraries are catching up on version 3 now.
  8. I'd recommend not using the python 2 tutorial and going straight to version 3 of the python language; why learn something old when you can learn it's replacement? But yeah, the game would probably be achievable using a library like PyGame once you get used to the Python language itself.
  9. Maybe you missed the Ultimate Programming Resources thread, where we've compiled a list of pretty much every well-known resource separated for different languages and interests etc. http://linustechtips.com/main/topic/14904-ultimate-programming-resources-thread/
  10. I can't remember what cin assigns to a variable now, but it may be creating an array of input, so perhaps the character you wish to use the switch on is actually at place difficulty[0]?
  11. I have the NF-A14s in the front and they are perfect. Super quiet on 5v/7v setting so you won't even notice them.
  12. Sublime Text 3 =D I really enjoy that I can open it up on Windows, Mac and Linux depending on my work situation, and find everything the same across all platforms.
  13. I would suggest looking at MinGW if you're used to a linux environment and working in Sublime Text (awesome choice of editor btw). http://www.mingw.org/
  14. Or perhaps this is an assignment? In which case they learn nothing. I'd be happy to give help where effort had been put into finding a solution.
  15. Why don't you convert it into Python? If you know Java, then this should be pretty straight forward as Python is far less complicated.
  16. Not entirely. I just mean that eventually, games tend to be written in C++, with languages like Python being used inside the engine to program the gameplay, or AI for example. Python is just a good start for general programming. For C/C++ syntax, Java would probably be better to start with.
  17. That's hot for a CPU man.. 80 is as high as I would comfortably go but if you really want to push it, i'd leave 90 as a max. Hitting 100C is too close to its 105 max temp.
  18. Windows Mod? C'mon guys.. I'd like to think any educated person would see that Mod in the gaming community is a word that should not be trademarked and conflicted with Microsoft products/UI. Just as Apple enforced trademark rights on iPhone, Windows would be able to restrict the word Mod attached to all kinds of things.
  19. For similar to OSX, I can't entirely help, though Ubuntu is probably it for the dock and 'app store' of sorts. I have become very fond of Linux Mint and while also not perfect, it provides me with a very nice traditional desktop environment to work in, with all the available software that Ubuntu provides so that would be my suggestion, but to each their own.
  20. The above idea might be a nice introduction to building something. If you perhaps work on a website with friends using HTML and CSS, and then begin developing a backend for the website in PHP or Python, you'll soon start to pick up programming concepts while enjoying creating something fun and useful with your friends at school. That way you can experience working on a group project, dividing up work and learning by helping one another.
  21. Lua is a great scripting language but I would see it as an additional language to use to complement another. You need something that is either equipped with the speed/power for engine development, or has a library of tools for more game development, less engine programming. Python has a lot of free libraries to use such as PyGame that will get you started quickly and Python is a great language to get you started. It's written in C so moving onto C and C++ would be a great step afterwards. Java is also a great possibility as there would be an abundance of game dev. resources available.
  22. Anyone can put together a website, and anybody can form some sort of game using RPG Maker or something similar. Anybody can learn any language and put together some code to do something, but those who build great things and develop great ideas simply take the same foundations and do more with them. Anybody can learn to program, but to program well requires experience and skill that books and teaching are fundamental to. You can try and learn yourself but you will require resources to aid you and give you a decent understanding that others without such resources will almost certainly lack. When I first started programming, I knew how to assign variables and being creating programs that did what I wanted, but I knew nothing about Object Orientation to drastically alter the development process and create reusable, easy-to-read code. I knew nothing of memory management in programs until I began a foundational C/C++ course. Until then all languages had done that for me; now I am able to better understand why some programs may require more resources or slow up in some areas. Don't listen to the negativity your teacher is providing. If you're interested in something, and you have the passion to become good at what you do, then the jobs you will get in the future won't be 'Web Developer at Generic Firm', they'll be software engineer, or researcher at big names, or unique companies doing things nobody else is doing. And your teacher will still be teaching things they barely understand.
  23. You're running Python version 3.*, so you need to use print() as a function: print('Hello World')>>> Hello Worldprint 'Hello World'>>> SyntaxError: invalid syntax
×