As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
I`m a beginner C++ programmer. And I want to pursue my career in system- and driver-programming.
Can you suggest me an opensource projects to I improve my skills in low-level development?
I am looking for a project with the following characteristic:
- on C\C++ language based
- a small project with a small amount of code, yet
- UNIX-based systems designed
Do you know that something like this?
Check the google summer of code projects page! These are all open source, and many of them are based on C/C++. Each project lists ideas that are aimed at outsiders / beginners.
Here is last year's page: http://code.google.com/soc/2008/ Google has not yet decided on which projects are participating this year, but this information will become available within the next couple of weeks (before the end of march 2009) along with a fresh list of ideas.
If you're a student in a College/University you can get lucky and even get mentoring through the GSOC project. But even if not, they will really value any contribution you can make.
Always work on open source projects that you actually use and care about. If you don't use the project yourself, why should you do good work on it?
What about Minix 3? It's a great way to learn about low level programming.
Start your own open source project.
Host it on Google Code
Make something does something great or makes something else easier to use
Use it and iterate it
Along the same lines as Sourceforge Help Wanted, there's a website called OpenHatch.org that lists bugs from open source projects that need attention as well as potential mentors. In particular, you can browse for bitesized bugs that might be a good place for a beginner to start.
Have you tried sourceforge's help wanted?
Edit: And as a personal suggestion, I'm not sure it fits your requirements, but the transmission bittorrent client needs an implementation of Kademlia DHT in C, which is pretty low level networking.
Related
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 9 years ago.
I am currently developing an rpg type game in C++. I have developed a few games in the past but have used heavily inclusive APIs. For this game I am looking into developing it more myself. I still want the graphic and animation functions to be (mainly) implemented using the library. Here is a break down of the game:
It will be a top down tile-based game when not in battle where the character is free to walk around and speed will be determined by a speed stat
Once in battle it will be a turn-based battle system with (not completely final) 3 man team on each side
Some information will be stored online and will be used in the game but that will not need to be checked often
What I am asking is; what would most likely by the best library or API for me to use for this purpose? I have searched and have been able to find a few that I believe may suit my needs but none that have been popular. Perhaps I am looking for something too specific but any help or recommendation would be greatly appreciated.
P.S. Along with a recommendation, a link for a decent tutorial or documentation would be most appreciated.
There is always the popular libsdl. There are many tutorials for this library online inluding the dedicated
http://www.sdltutorials.com/
You can always use as much or as little of a library's functionality as you like.
Have you had a look at this?
http://irrlicht.sourceforge.net/
If you look in the forums, people have written their own compatible libraries for AI, Physics etc etc that they seem to be happy to share. Also there are lots of compatible tools like this http://www.ambiera.com/coppercube/ and lots of language wrappers.
As an addendum to Caustic's answer, I suggest looking into Ogre3D. Like Irrlicht, it is primarily a rendering engine, leaving much of the work to be done by yourself. From personal experience, I cannot recommend one over the other.
I am sorry to swear. I believe you should use SFML because it is an all-around nice library for graphics development.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 11 years ago.
I am working as c++ developer in cfd field for last 1.5 years. Since I am from computer science background I have very poor domain knowledge in CFD. I have searched on net but didn't get the kind of material am looking for. Actually am getting mathematical research papers about cfd focusing on theory and formulas . What I want is a tutorial written in plain English targeting novice people with focus on software development. I might be asking too much , but any help is appreciable :)
Well, if you want to have a somewhat more friendly introduction (although you simply won't be able to escape math) you might start at "Fluid Flow for the Rest of Us" by Cline, Cardon and Egbert and work your way up from there. Google it and you'll find it online.
Or you could have a look at Robert Bridson's book "Fluid Simulation for Computer Graphics" which introduces the basic concepts in a more gentle way.
These are both texts dealing with fluids targeted at computer graphics, but they might provide a gentle introduction while you work your way up to CFD simulations.
I've worked with/on two C++ libraries that both come with a lot of theory, docs and tutorials: http://www.dealii.org/ and http://libmesh.sourceforge.net/. Both are adaptive refinement finite element libraries, both with a focus on (scientific) fluid simulations.
Another good start could be Fast Fluid Dynamics Simulation on the GPU, which actually lends to a very simple (but not optimal) implementation on the CPU.
It comes with shader's source that can be ported straight to the CPU, and provides an easier and more programming oriented approach than Bridson's book.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
Is there software that can help create flow charts, class diagrams etc to help software development planning.
Thanks
You can create all kinds of charts and diagrams with something like Microsoft Visio or the open-source Dia.
If you want to auto-generate things like this, take a look at using a UML-based tool. A list of some UML tools is available here.
As a open-source fan and contributor, I tried Dia on Ubuntu, but it was way too clumsy for what I needed to do. One thing I wanted to do was get raster or vector snapshots of fairly complex multi-page diagrams and put them in a wiki page, and Dia really couldn't cope with that - the fonts went all wonky and so on.
If you try Dia and find it doesn't work for you, and you have access to a Mac, try OmniGraffle. It's pretty slick.
I use Graphviz in conjunction with doxygen. Search for both on Stack Overflow, there are lots of tips,such as this page.
In particular, as a highly-iterative developer, I really like that the diagrams I create with Graphviz are stored in a simple textual fashion and so can be included in version control and diff nicely.
There's a very nice iPad/iPhone version of Graphviz called Instaviz which allows you to exchange diagrams with your desktop machine and tweak them on the pad.
We used Rational Rose in class to do that. It also does much more:
http://www-01.ibm.com/software/awdtools/developer/rose/
I use this Software Ideas Modeller, or rather, used to before everything was built into Visual Studio (Ultimate with the many plugins that are available for it).
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 11 years ago.
I am looking for an open-source project involving c++ GUI(s) working with a database. I have not done it before, and am looking for a way to get my feet wet. Which can I work on?
How about this one http://sourceforge.net/projects/sqlitebrowser/:
SQLite Database browser is a light GUI editor for SQLite databases, built on top of QT. The main goal of the project is to allow non-technical users to create, modify and edit SQLite databases using a set of wizards and a spreadsheet-like interface.
Do a project you can get involved in and passionate about. Hopefully a product you use every day.
Anything that you like and feel that you can contribute to.
In my brief experience contributing to an open-source project, I found two points keep me contributing:
Great people - the other people contributing were fun to collaborate with and hang out with (virtually).
Project you care about - doesn't really matter which project as long as the its goals are something you want to spend your free time working on.
Sourceforge has a help wanted page: http://sourceforge.net/people/
browse the postings to see if a project is in your expertise or find one that sound interesting...
And let me be the first to say thank you for being willing to contribute your time and knowlede to the open source movement.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
The Visual Studio refactoring support for C# is quite good nowadays (though not half as good as some Java IDE's I've seen already) but I'm really missing C++ support.
I have seen Refactor! and am currently trying it out, but maybe one of you guys know a better tool or plugin?
I've been working with Visual Assist X now for a week or two and got totally addicted. Thanks for the tip, I'll try to convince my boss to get me a license at work too.
I've been bughunting for a few days since Visual Assist X kept messing up my Visual Studio after a few specific refactorings, It took me (and customer support) a week to hunt down but let's say for now that Visual Assist X is not a good combination with ClipX.
Visual Assist X by Whole Tomato software is not free, but it's absolutely worth the money if you use Visual Studio for C++.
http://www.wholetomato.com/
I have tried Refactor!, as its features seemed promising, as did its testing with a simple testing project, but it failed to work with our real project at all - a lots of CPU activity, sometimes even frozen VS IDE, Refactoring UI not appearing at all for most of the code.
We are using Visual Assist X instead. While it does not offer than many refactorings and it seems to me somewhat more complicated to use, it works.
I didn't find this post and created another one. There is a great response about VS2010 there.
If you are like me, who wishes VS2010 comes with C++ refactoring support, please visit my Microsoft Connect ticket and vote for it. Hopefully with enough votes, MS may give it a higher priority.
Mozilla's Taras Glek worked the last year or two on C++ analysis and code rewriting tools. His blog is at http://blog.mozilla.com/tglek/, you can find links to the tools they created there. They are of course free and open-source. No GUI, but I thought I'd link it in case it's interesting to anybody.
If you like emacs then Xrefactory is a good choice.
I'm not familiar with the tools you mentioned but the refactoring support for C++ in Eclipse 3.4 is getting pretty useful and growing.