DeadXorAlive

Members
  • Content count

    583
  • Joined

  • Last visited

Community Reputation

535 Good

About DeadXorAlive

  • Rank
    Advanced Member
  1. Alternatives to C++

    Eclipse issues can be ugly, on what distro you are on? I happened to come across the same problem with button-clicks with Aptana (also eclipse based), for which some advice I found fixed the problem: start with "sh -c export GDK_NATIVE_WINDOWS=true; exec ./AptanaStudio". This was for Ubuntu but I have the same problem on Mandriva. Creating projects for descent, I find that very confusing and just ended up doing everything on the command line with dsss for D1. (doesn't work for D2, but rdmd does and comes with the compiler). Somehow the java based model doesn't seem to fit the simple file==module philosophy of D. If you are not tired yet you can try posting in the descent forum or the newsgroup digitalmars.D.learn. Haven't used Descent for a while because it doesn't really support D2 all that well. I think poseidon also has code-completion and better project management / building support. Anyway this is a huge let-down for new users who come to expect some decent IDE capabilities for their work, which is unfortunate. Installation shouldn't be this hard. The semantic features of Descent are quite advanced, it incorporates the entire front-end of the dmd compiler ported to Java. However, this is not worth much when installation fails or you even can't create a new module without blinking. EDIT: about code completion backend: there is not that much parsing needed on the project level. Generally you only need the import paths and compiler settings (debug, version, unittest, etc.). From there you can parse the dependencies from a single .d file, which is straightforward. There is no modules / namespaces split across files or preprocessor magic. Oh I forget, there is gccxml which does what you mention, the dmd compiler does something like this too, but a bit more primitive and with json instead of xml. Now just for an IDE which actually uses this information ...
  2. Alternatives to C++

    Descent is the eclipse plugin, which has some pretty cool features such as debugging code that runs at compile time (templates, ctfe). However this is quite a big project (I think now about 800K loc), support for current D branch is not up to par yet (there are not that many developers) and not everybody likes eclipse. I do hope it will be further developed but a visual studio extension will certainly help. Somebody just has to do it. What about delphi or free pascal? Don't they fit the native code / systems programming model?
  3. Alternatives to C++

    Quote:Original post by Telastyn Quote: Of course, a language is just one part of the deal, you have to consider toolchain, libraries, documentation, popularity and expertise available. You can't beat C++ in that of course. Of course? Maybe under a fairly specific set of constraints... Yeah I was wrong there without qualification. What I meant to say was that any new language without huge corporate backing will have a hard time competing on these parts, especially a systems programming language.
  4. Alternatives to C++

    Quote:Original post by pulpfist ... 4. D Dont know much about this one really. Can Digitalmars be trusted? Is this language on its way in or out of the loop? ... I like D very much myself, but it's up for you to decide what you want. The requirements you have stated are pretty vague, all I can think of is that you maybe want a systems programming language? In this article by Alexandrescu you can read what you might like about D. Currently Alexandrescu is finishing his book 'The D programming language' which should come out somewhere in may this year. At that point the language specification will be stable as the book will reflect that. Right now the last features are cut out and put in. This means to compiler is a bit rocky in the parts that are still new such as the concurrency system. Of course the people behind D are hoping the language will be on it's way in this year but it's not easy for a language to succeed and D has not really managed to fit a niche just yet. As for trust, you can look at the changelog and see that digital mars (basically just Walter Bright) has put out free D compilers for nearly ten years now, sometimes two releases per month. Most of these are still available via ftp. The front end is open source and there are two other compilers, the backend code is available too (but not redistributable). Walter Bright has developed the zortech and later symantech C++ compiler, for which he then bought back the rights and developed into the digital mars c++ compiler. If you are looking for 'a C++,' I don't agree with the people that say C++ is doing that just fine, D is much better at that. (Even though it is much more). Of course, a language is just one part of the deal, you have to consider toolchain, libraries, documentation, popularity and expertise available. You can't beat C++ in that of course.
  5. Another platform is Nokia's Maemo (only N900 at this moment). Don't laugh just yet, there are so few games for it right now that you have a good chance to stand out. In fact it's almost impossible not to get attention if you develop a half decent game :) It's a very decent platform to develop on, especially if you have some linux experience. You could consider making a port to the N900 of your IPhone games. Rovio did that with Angry Birds, which has got almost the same amount of downloads in one week on the N900 as it has on the IPhone in six weeks.
  6. Recommend Distro..

    Well, what do you want from it? Personally I have used mostly OpenSuse and Fedora, but am on Mandriva atm which I really like too. From all the distros I tried, I like Fedora the best although mandriva is very nice, perhaps the smoothest of all. (more so than ubuntu). Latest Fedora did not work with fglrx drivers, that's why I switched. OpenSuse for me was quite stable, but sometimes a bitch when it does break or you need to do some modifications. Fedora is much closer to upstream, which I prefer. I do think OpenSuse has lots of goodies for developers though, perhaps it also has closer ties and better packages to Mono upstream, not sure if that matters for you.
  7. OpenGL opengl-based interface for desktop apps

    The clutter toolkit sounds like what you want. It is a scene-graph based ui toolkit made by Intel as a basis for the Moblin OS user interface. It also supports json declarative UI (like WPF and the upcoming Kinetic from QT). Quote: Clutter is an open source software library for creating fast, visually rich, portable and animated graphical user interfaces. Clutter uses OpenGL (and optionally OpenGL|ES for use on Mobile and embedded platforms) for rendering but with an API which hides the underlying GL complexity from the developer. The Clutter API is intended to be easy to use, efficient and flexible.
  8. Which design pattern book to read?

    Head first, you either love it or hate it with a passion. It induces too much cringing for me, at the least get a sample chapter to see if it's for you. I partly agree with drakostar about POEAA. Nearly half of the book deals with database related problems and for everything a web application is assumed. Then again, it's not as specialized as you might think. It is also on the introductory level. The GoF book is good, but a little dry. You can probably do better, but I would still recommend this one out of the tree. When you don't understand something, you just google and it'll work out fine. Head first and GoF deal the the same subject matter, POEAA is a bit different. You could get both POEAA and GoF.
  9. Good Windows PDF reader

    I like Okular on linux, and since KDE is ported to windows I think it should be available there too.
  10. Buddhism

    It certainly is intriguing, but not everything what you say is accurate. In buddhism it is harder to seperate the philosophy from the religion as has happened in Western culture. There are also so many different buddhisms, some of which are quite magical and very incompatible with science. Even the idea of reincarnation is not 'scientific' yet for many buddhists this is a reality.
  11. number of developers vs development time

    How productivity scales with number of programmers also depends heavily on how the process is organized. Things like version control, testing, clarity of specifications, etc. Some methodology like scrum can also make a huge difference communication wise. Besides overhead, I do find there is also (productivity) benefit to working in small teams that you don't get in a one or two man show. Even if you don't take expertise into account, you can get some sort of dialogue going on which helps productivity. I'm not talking about meetings perse, but for example code reviews, or one guy doing the testing for the other guy. Furthermore, if you have a modular setup, each programmer can focus on a much narrower domain so that he doesn't have to keep so many things in his mind at once (can also be a downside).
  12. Barack Obama Wins Nobel Peace Prize

    I don't think it's premature. The prize is awarded not for intentions or effort, but for specific things people have done. In this case being the single most powerful leader in the world alone means something, that is not a merit of the person but the prize is not about that. Arafat for example was chosen because of the peace negotiations and that he became more moderate (in fact he shared the prize with the Israeli), justly so I believe. A lot of people underestimate what impact American diplomacy (or non-diplomacy / aggression) has on the world at large. This kind of foreign policy is really unique for America and for this he has rightfully been given the prize, imho.
  13. Duct Tape Programmer

    Quote:Original post by Yann L Quote:Original post by Kingerthethird Found this article while reading Job Listings. Felt like Sharing. http://www.joelonsoftware.com/items/2009/09/23.html I don't know. There's also the opposite of over-engineering, and that's being totally oblivious to newer technologies, to the point of becoming obsolete and detached from reality. Both extremes are bad. Over engineering certainly is a big problem. Then again, are people who claim that all OOP is the spawn of Satan and everything should be done in pure C any better ? I agree, it's a fine balance probably. During my job I learned to make more modest code so developers (including me) can read it and it just ships even if it's not brilliant and has some bugs. On the other hand, I also have experienced just pounding on rotten code to get something done will haunt you after a release with costly bugfixing and maintenance. Not writing a single unittest does result in meeting that first deadline, but what happens after that is also important...
  14. Am I implementing MVC correctly?

    MVC is a family of related patterns and many people have different definitions of it. Thus it can be very confusing to read / talk about it, since there actually exist different plausible answers to your question! If you want to know more about it, you can google for related patterns like MVP, passive view, supervising controller etc. Fowler has written some things about it which can be found online. Now about your setup: the main concern with all these patterns is to separate the view from the model in such a way that the model is not dependant upon the view. So the view should not call the update methods in the model directly (only through observers or events). To put it in other words: how easy can you just put in a different view? How the controller fits into all this is a matter of choice, you have different options. I would actually recommend googling for above mentioned patterns and choose a setup you find attractive yourself. It's not so much a question of implementing it correctly but understanding the tradeoffs.
  15. The Windows 7 Launch Party video

    from some random blog Quote:Apple has spent what seems like 10 years trying to make PC users look dorky with their “I’m a Mac” advertisements. And along comes Microsoft and does a far better job at it. Notice the clock on oven starts at 3:20 and ends, 6 minutes later, at 5:01. I hate to tell these folks, but after 1.5 hours, you can assume no one else is going to show up. I can’t help thinking that, if Microsoft had come out with a well-managed, well-produced and enjoyable ad campaign that didn’t make everyone cringe, they wouldn’t currently have half the internet talking about their product launch. So perhaps this is actually brilliant… I managed to cringe for 30 seconds until I had to stop watching.