Hackable Scriptable Programmable Cell Phone
Does such a thing exist?Comments [2]
Comments [2]
Comments [0]
Comments [0]
Comments [0]
Comments [0]
If you need to copy table structures between different versions of SQL Server, here is the trick to get the correct scripts. If you simply generate the scripts by right clicking and then clicking "Script Table as" you'll get the SQL Server 2005 TSQL which Sql Server 2000 with choke on (It won't recognize the new fancy stuff in 2005).
To work around that use the following method.
In Microsoft Sql Server Management Studio:
The resulting script will work in Sql Server 2000.
By: WickedMonkey
Comments [0]
At my day job we develop a lot of web applications. I don't mean web sites, I mean web applications. The type where you fill in a lot of forms and have workflows and need reports, etc.
Our websites are the front end for our business operations. We also code back office business processes. These processes require somewhat complex configuration through the web interface.
We were lamenting how hard it is to get reliable AJAX going across browsers. If you want to support IE7/IE8, Firefox, Chrome, etc you need to do a lot of work.
When Silverlight was announced, it sounded like a great replacement for standard asp.net webforms. You use C# for the client code, no JavaScript necessary. As long as there is a Silverlight plugin for your browser, your application willl just work. Not only will it just work but it will work the same in every browser. Hallelujah and Amen brother!
However, the reality is different. Most (but not all) of our apps run on a corporate intranet. Silverlight is designed to run in an internet environment. Why is that important? Data Access.
Data Access Sucks in Silverlight!
I hope thats clear enough. Why does it suck? Because you can't simply query your SQL Database as you did before. You see there is no real data access layer in Silverlight. You use web services to get all the data. And that's understandable in an Internet environment. But in an Intranet it makes no sense.
Instead of querying your database you have to either use ADO.NET Entity Framework with .NET RIA Services and a DomainService class. Or you can use ADO.NET Data Services with the ADO.NET Entity Framework.
WTF? The Architecture Astronauts have left the stratosphere. Here's a good example post dealing with the insanity that is .NET RIA.
Silverlight looks to be a great Flash replacement for those who need such a thing. But I can't recommend it as a replacement to good old ASP.NET web forms.
Comments [0]
Scala is a wonderful language. In fact I think I'd refuse to work on the JVM without either Scala or Jython (maybe clojure, we'll see).
However, the siren song of C# is luring me back. It really is the most advanced mainstream development language in existence.
The real killer app api of c# is Linq. Linq is awesome. Linq makes programming in c# fun. Java and c# used to be pretty darn similuar, now c# has pulled way out in front. I think that Scala or Clojure are the only way Sun can keep up with MSFT in the language department.
Oh and if C# isn't enough for you, there's the funky functional F# which I've only played around with but found it pretty cool also.
I'll admint, I'm a polyglot.
I've been using Python to work through the project euler problems. While I find python fantastic for small scripts (like the one's for Euler) it just can't beat C# for large projects.
Jonathon Blow (of Braid fame) makes a good case for static languanges.
2) Do not underestimate the power of statically-checked languages for large projects. In such languages, the compiler is very much your friend. It enables you to do huge overhauls that would be much more difficult in a dynamic language. It works like this: you rip out all the old code, change whichever interfaces and data structures you want. Now the program doesn't link any more and gives you a ton of compile-time errors. But this is good -- this is how the compiler keeps track of all the tiny details for you, which functions you still need to write, which code you need to change to conform to new data structures, etc. You don't need to think about any of that stuff at all, or maintain to-do lists, or anything. The compiler does this record-keeping for you, freeing you to think more about the actual designs and implementations. To proceed, you just start at the top of the error list and fix the errors, one by one. When you're back down to 0 errors, you have done everything the compiler was reminding you about. And if you were perfect your program will now run. (Of course in a system this complicated you probably made some bugs that you now have to fix -- but it's way, way fewer bugs than you would have in a dynamic language).
2a) Dynamic Language Advocates will often talk about dynamic systems being great because they give you some Cool Paradigm that you don't have with static languages (like playing around in a read-eval-print loop, or something). But they don't seem to understand that static languages offer important paradigms, like 2) above, that are very useful for Getting Things Done. These things may be subtle, but they are still very valuable. The dynamic languages throw away this subtle, valuable thing for something more obvious but less valuable -- and they think they are winning. (There are other, even more subtle things, like the confidence the programmer has in individual changes... but I won't go into those here.) I am much more powerful as a programmer because I can rip out core parts of the code, yanking out tendrils that reach through the whole codebase (i.e. "lots of crosscutting concerns"), and I can do this without fear -- it's no big deal, everything will be back to normal in a few days. In a dynamic language, I would be so much more worried about this kind of change that I would do it rarely or never (I would be thinking, "ohmygod I am about to fuck up the entire code base, this is going to be a disaster.") Fear of change can be very bad -- it encourages code rot, which means your code slides slowly into unmaintainability.
So C# is the choice for my next prototype. Christopher Park used C# to create AI Wars. So I'm in good company (I think).
Anyway I'm not entirely done with my Scala game. I may return to it at some point. But right now my muse has pushed me in a different direction. So with a new prototype comes my reaquaitence with an old friend (actually I use C# everyday so it's my "best" language).
Comments [0]
So why would I use Java to develop a game?
I like Java the platform not Java the language. A few months ago I was very interested in Scala. I used Scala to develop a prototype hex based strategy game.
I got as far as generating the hex map, generating the tiles and generally completing all the map work.
Scala was an interesting choice. Much better than Java. However, I was translating all the examples from Java while learning Scala, so no doubt I could make some improvements to the code.
After completing this work, I was happy with what I had but I took a break from the project. I wasn't sure I wanetd to push forward with a turn based strategy game at this point.
If you're curious, there are several books about Java game development. I subscribe to Safari Books so I had access to several. The books are generally better than the online tutorials. I find them more well thought out and there are also downloadable resources from the author's sites.
I think Java is a valid choice for PC game development. I wanted to also target Mac, so again Java would be a good choice. I can't say if it would be great for 3D games, but it proved more than adequate for a 2D game.
For an example of a isometric 2D game in Java see freecol. It's a freeware implementation of the classic Sid Meier game Colonization.
I used the netbeans IDE to develop the game. I tried to get Eclipse set up (my preferred Java IDE) but it was just too quirky. All though Eclipse promised more features. My one complaint about Scala is the lack of a good IDE. However, a good IDE is hard, so I understand that a shiny whiz bang Scala IDE isn't going to happen overnight.
I planned to use Jython as the scriping language of the game. The new activity in the Jython project is rather encouraging. My second choice was JavaScript with Rhino. Either language should be easy enough for newbies to pick up.
My original intent was to discuss why I'm moving back to C# for game development, but in writing this article, I think I've convinced myself to keep using Java+Scala. But that's the point. I think C#/Pygame/Java/whatever could be used to make a pretty decent indy game.
I'm still undecided. C# provides easy access to DirectX/Direct3D and XNA. Java makes it easy to get on the Mac. What I really need to decide is what's a better target platform. Is Mono an option on the Mac?
More research is required.
Comments [1]
[Insert Witty Saying Here]