Re:The more I learn about JavaScript...
on
GWT in Action
·
· Score: 1
In other words: Javascript is quirky, and this is to be expected, given its history. But just about every single one of those quirks that's actually a problem can be worked around within the language itself, and you can put those workarounds in a library. Not many other languages can do that.
Actually, every single dynamic language can do that. That really is the crux of your argument. It's not so much that javascript is good or bad as it is that dynamic languages are better than static ones. I don't have a strong opinion either way. There are advantages and disadvantages with both.
I don't really have an argument against javascript, the language. It's how javascript is implemented in the web browser that I am unhappy with. Can I live with it? Sure. Do I see room for improvement? You bet!
Re:The more I learn about JavaScript...
on
GWT in Action
·
· Score: 1
You want a good debugger. Or, hell, just look at Firefox's error log -- it'll show you errors in HTML and CSS, also.
A good debugger does help but I have run into situations where javascript errors did not generate anything in FF's error log. Also, I end up having to debug my javascript in both IE and FF in order to make sure that it works in both browsers.
It's completely easy to work around, also. Would you care to explain what about it is a problem?
If you create an object and call a method on that object, then the this variable within the scope of the method refers to the object whose method has been called. However, if you set that method as the target to an event and that event gets fired, then the this variable within the scope of the method refers to the object that fired the event. I realize that there are libraries (e.g. prototype binding) that get around this but the fact that you have to use a library for a properly working this variable reflects poorly on the language.
Re:The more I learn about JavaScript...
on
GWT in Action
·
· Score: 1
In JavaScript you find all errors at runtime
This may be more of a DOM issue than a javascript issue but I find a lot of situations where you don't get an error at all. It just doesn't do what you instructed. Sometimes execution just halts in that method and sometimes it doesn't.
Also, don't get me started on javascript's this variable which is a complete joke.
Although your points are good, Dvorak's article is not as much about centralization vs decentralization as it is about who controls the server(s), you or somebody else. I have blogged on this.
Go simply has too many possible moves. I know of no programs made thus far that can even approach Go playing capacity. And I doubt there will be any time soon.
I agree with you as does the publisher of IEEE Intelligent Systems in a recent editorial of his.
Not only is the combinatorics in Go greater than that of Chess but also the pattern recognition requirements in Go are much greater than that of Chess. With Chess, you have things like passed pawns, zugzwang, sister squares, and open files to recognize. In Go, you have things like life and death, thickness, shape, and the direction of play that you must be able to recognize. IMHO, the Go patterns are much more abstract than the Chess patterns.
However, let me take this moment to plug a great OSS Go program, GNU Go, which is the AI player part, and Panda-glGo, which simulates a Go board and can integrate with GNU Go. This is a great way for beginners to drill and improve their Go playing skills.
With regards to the part of the article that talks about corporate customization of games for corporate or military training, I'm surprised that I didn't see anyone else here talk about this but how about turning to the OSS world for custom game mods? cube shows great potential for modification. Nexuiz looks really nice and plays sweet. Tremulous is a great example of a FPS with non-traditional FPS rules.
I know what you are saying. I (very politely) explored that with him. Here was what he had to say to economically justify his gaming life style.
a six month old card still has retained much of its resale value
a two year old card cannot be sold at all
buying a new card every six months and selling the old one has the same economic impact as buying a new card every two years and just throwing away the old one
since both options have the same TCO, pick the option with the most features which is to stay current
I have no idea if his analysis is correct or not. I believe that if you factor in your time upgrading and selling hardware, then the TCO picture would not look comparable. However, if you enjoyed upgrading and selling hardware, then it is just a part of your hobby.
I don't wish to criticize early adopters since they underwrite a lot of the R&D costs that make technology better for the rest of us.
I was talking with our head of IT the other day. He is a serious gamer who just purchased a $500 USD video card. He buys the latest and greatest video card about twice a year (selling his old one on on ebay) and upgrades his motherboard once every two years. He has no plans to stop doing this. Ever.
The title should have read The Complete History of A/V Format Wars. Here I thought that it was going to document such things as CDF versus RSS versus Atom.
many are little more than venues to demonstrate some piece of software, or built to satisfy some narrow need... Ubuntu [has] done a much better job of attracting and integrating projects, unlike Debian's explicit efforts to distance itself from KNOPPIX etc. But don't mistake this for a prediction that they'll somehow put an end to hobbyist distros ("I want to do this because I can")
I celebrate the hobbyist distro and claim that it is a good thing, especially those that target a narrow need and that can be booted off of the CD-ROM or DVD.
2. If you know Office you must learn OpenOffice. Office is taught in every school I know of.
Open Office is more like MS-Office 2003 than MS-Office 2007 is like MS-Office 2003. It will be easier and cost less to train a company to use Open Office than it would be to train them to use MS-Office 2007.
5. Sharepoint. I haven't seen anything as easy to use from the FOSS community.
You should try plone which better, easier, and more customizable than Sharepoint.
IMHO, STL is the best thing that has ever happened to C++. It really fills in some important gaps in C++, making it almost as easy to code in as Ruby, Python, Java, or C#. I have blogged on this previously.
I appreciate your feedback and am not disputing what you said. I find it interesting to hear how linking to another page is bad considering what the inventor of the World Wide Web had to say about hyperlinking. I guess that it is a zero sum game when battling for position in your google rank.
Thanks for the feedback. I will address your usability issues when I get the time. I don't think I understand your last bullet point. Are you saying that linking to "top 10 things" style articles is discouraged? Why? What browser do you use? I'll start testing with that too.
The articles for the in depth blog are made up of multiple sections. The left hand side navigation takes you to the different sections of each article. The secondary horizontal navigation takes you to the different articles. Although each page from the in depth blog is smaller than a blog entry from the mundane blog, if you added up all the section pages for any article, you would find that the articles from the transition choices site are larger than the entries from the blogspot site.
Thanks for the feedback on the colors. It's time to change them anyway.
I agree that there is room for both. That is why I have two blogs. My blog at the transition choices site is really for more more elaborate, in-depth articles. My blog at google's blogger site is for the more mundane reaction to today's news.
As you can plainly see, the transition choices blog site is more organized like a article publishing portal than a typical blog site. It has a three level navigation hierarchy, support for mini-sites, a rudimentary portal organization, an extensible search facility, and content syndication. All that and it's open source too.
I guess you are now going to explain to me how I can easily check in my changes without uploading that key? Since you are the one who can never get the connection and since I am the one who has no problems, maybe you're the one who is wrong. As they say, the proof is in the pudding.
The advantage of using shared SSH keys is that you don't have to type in your password with each CVS command. It is not a requirement, however.
I guess that it doesn't really matter since you moved on but just in case anyone else is running into this, did you set the CVS_RSH environment variable to ssh? Also, there is no need to store your key at SF.
I'm using a RHAT 9 machine when I connect. That might also make a difference.
Having fought with their CVS implementation for a few weeks
I recently started a project over at sourceforge and I think that what they provide is really great. They give you all kinds of features like forums, news, trackers, and web site statistics via RSS. They will host a web site to promote your project. That hosting includes the ability to run a web application written in perl and access to your own database on a MySql server. With that much capability, I implemented the project web site using the source code of the project itself.
You also get ssh, sftp, and cvs (via ssh) access. I haven't run into any problems with updating the content. There is a web interface for downloading code but you have to use cvs for uploading. I don't know what problem the original poster was running into but I found no difficulties with it.
Flame wars aside, emacs is for developers and vi is for system administrators. I realize that there are plenty of developers that swear by vi; however, I still believe that is the target audience for these two tools based on their respective feature sets.
Obviously, you can run emacs in a pure CLI environment. That is not, however, where emacs shines. It shines in a windowing GUI environment. If you are a systems administrator who just needs to ssh or telnet into a couple of dozen servers today, look at some log files and adjust a configuration file or two, then vi is definitely the way to go.
If you are a coder who wants an IDE capable of color syntax highlighting, statement completion, block related indentation adjustment and other development related features that are somewhat consistent in a heterogeneous programming language environment, then give emacs a serious look. Yes, the macro record/playback capability is very handy too.
Thanks, Microsoft, for making this an issue. Had your lawyers not issued a C&D on this,/. most probably would not have posted this story and I would still not know about this cool add-in.
I can see them removing support for MS Team System on the Express versions but nothing else. IANAL but I don't see how integrating NUnit support into the IDE is a violation of anything. If MSFT didn't want you to extend their IDE, then they should not have published the EnvDTE or Extensibility assemblies.
My limited understanding of this area is that Team System still has some catching up to do before it can really compete with NUnit. MSFT should be grateful for TestDriven.NET because it fills a gap in VS.NET that comes standard with its competing IDE, Eclipse.
Even if MSFT succeeded in destroying TestDriven.NET, it still wouldn't crush NUnit which comes with its own GUI that is easy to attach to (and, therefore debug) from within the VS.NET IDE.
Right, to avoid any licensing restrictions for your commercial, closed source application that uses MySql as the database vendor, you don't bundle any of the MySql software but you do say in your installation documentation what they need to do to make MySql work with your software including what client libraries to download and install.
Let me provide an example. I just recently started an open source project. This is obviously not a great example because this project is open source and will always and forever be so. For the sake of illustration, let us pretend that it is a closed source application. The technology is HTML+Javascript on the client and traditional LAMP on the server. There is, however, a small J2SE command line utility included that is useful for publishing content by transferring it from a local instance of MySql to the instance of MySql that will serve the content to the intended audience. I don't bundle or include any MySql code with this project but I do mention in the README file that this utility depends on mysql-connector-java-3.1.14 (not included). Again, I am talking about an open source project but even if this was closed source, I would not be in violation of the GPL because I did not include the MySql driver. I only documented that it needed that driver.
Of course, in the case of a corporation wanting to acquire and deploy an application that uses MySql, they would prefer to purchase the commercial license. This is precisely why MySql provides one.
Actually, every single dynamic language can do that. That really is the crux of your argument. It's not so much that javascript is good or bad as it is that dynamic languages are better than static ones. I don't have a strong opinion either way. There are advantages and disadvantages with both.
I don't really have an argument against javascript, the language. It's how javascript is implemented in the web browser that I am unhappy with. Can I live with it? Sure. Do I see room for improvement? You bet!
A good debugger does help but I have run into situations where javascript errors did not generate anything in FF's error log. Also, I end up having to debug my javascript in both IE and FF in order to make sure that it works in both browsers.
It's completely easy to work around, also. Would you care to explain what about it is a problem?If you create an object and call a method on that object, then the this variable within the scope of the method refers to the object whose method has been called. However, if you set that method as the target to an event and that event gets fired, then the this variable within the scope of the method refers to the object that fired the event. I realize that there are libraries (e.g. prototype binding) that get around this but the fact that you have to use a library for a properly working this variable reflects poorly on the language.
This may be more of a DOM issue than a javascript issue but I find a lot of situations where you don't get an error at all. It just doesn't do what you instructed. Sometimes execution just halts in that method and sometimes it doesn't.
Also, don't get me started on javascript's this variable which is a complete joke.
Although your points are good, Dvorak's article is not as much about centralization vs decentralization as it is about who controls the server(s), you or somebody else. I have blogged on this.
I agree with you as does the publisher of IEEE Intelligent Systems in a recent editorial of his.
Not only is the combinatorics in Go greater than that of Chess but also the pattern recognition requirements in Go are much greater than that of Chess. With Chess, you have things like passed pawns, zugzwang, sister squares, and open files to recognize. In Go, you have things like life and death, thickness, shape, and the direction of play that you must be able to recognize. IMHO, the Go patterns are much more abstract than the Chess patterns.
However, let me take this moment to plug a great OSS Go program, GNU Go, which is the AI player part, and Panda-glGo, which simulates a Go board and can integrate with GNU Go. This is a great way for beginners to drill and improve their Go playing skills.
With regards to the part of the article that talks about corporate customization of games for corporate or military training, I'm surprised that I didn't see anyone else here talk about this but how about turning to the OSS world for custom game mods? cube shows great potential for modification. Nexuiz looks really nice and plays sweet. Tremulous is a great example of a FPS with non-traditional FPS rules.
I would be terribly, terribly remiss not to mention http://live.linux-gamers.net/ which I have blogged
about previously. I'm sure that any of these folks would make it happen if you waved $5M in front of them.Mod parent up as I agree with him. Not only is it senior versus junior, it's specialist versus generalist.
Any help here for those with osteoporosis?
I know what you are saying. I (very politely) explored that with him. Here was what he had to say to economically justify his gaming life style.
- a six month old card still has retained much of its resale value
- a two year old card cannot be sold at all
- buying a new card every six months and selling the old one has the same economic impact as buying a new card every two years and just throwing away the old one
- since both options have the same TCO, pick the option with the most features which is to stay current
I have no idea if his analysis is correct or not. I believe that if you factor in your time upgrading and selling hardware, then the TCO picture would not look comparable. However, if you enjoyed upgrading and selling hardware, then it is just a part of your hobby.I don't wish to criticize early adopters since they underwrite a lot of the R&D costs that make technology better for the rest of us.
I was talking with our head of IT the other day. He is a serious gamer who just purchased a $500 USD video card. He buys the latest and greatest video card about twice a year (selling his old one on on ebay) and upgrades his motherboard once every two years. He has no plans to stop doing this. Ever.
The title should have read The Complete History of A/V Format Wars. Here I thought that it was going to document such things as CDF versus RSS versus Atom.
I agree.
I celebrate the hobbyist distro and claim that it is a good thing, especially those that target a narrow need and that can be booted off of the CD-ROM or DVD.
Open Office is more like MS-Office 2003 than MS-Office 2007 is like MS-Office 2003. It will be easier and cost less to train a company to use Open Office than it would be to train them to use MS-Office 2007.
You should try plone which better, easier, and more customizable than Sharepoint.
IMHO, STL is the best thing that has ever happened to C++. It really fills in some important gaps in C++, making it almost as easy to code in as Ruby, Python, Java, or C#. I have blogged on this previously.
http://ploneglenn.blogspot.com/2007/07/authority-o r-community.html
I appreciate your feedback and am not disputing what you said. I find it interesting to hear how linking to another page is bad considering what the inventor of the World Wide Web had to say about hyperlinking. I guess that it is a zero sum game when battling for position in your google rank.
Thanks, again, for your feedback.
Thanks for the feedback. I will address your usability issues when I get the time. I don't think I understand your last bullet point. Are you saying that linking to "top 10 things" style articles is discouraged? Why? What browser do you use? I'll start testing with that too.
The articles for the in depth blog are made up of multiple sections. The left hand side navigation takes you to the different sections of each article. The secondary horizontal navigation takes you to the different articles. Although each page from the in depth blog is smaller than a blog entry from the mundane blog, if you added up all the section pages for any article, you would find that the articles from the transition choices site are larger than the entries from the blogspot site.
Thanks for the feedback on the colors. It's time to change them anyway.
I agree that there is room for both. That is why I have two blogs. My blog at the transition choices site is really for more more elaborate, in-depth articles. My blog at google's blogger site is for the more mundane reaction to today's news.
As you can plainly see, the transition choices blog site is more organized like a article publishing portal than a typical blog site. It has a three level navigation hierarchy, support for mini-sites, a rudimentary portal organization, an extensible search facility, and content syndication. All that and it's open source too.
I guess you are now going to explain to me how I can easily check in my changes without uploading that key? Since you are the one who can never get the connection and since I am the one who has no problems, maybe you're the one who is wrong. As they say, the proof is in the pudding.
The advantage of using shared SSH keys is that you don't have to type in your password with each CVS command. It is not a requirement, however.
I guess that it doesn't really matter since you moved on but just in case anyone else is running into this, did you set the CVS_RSH environment variable to ssh? Also, there is no need to store your key at SF.
I'm using a RHAT 9 machine when I connect. That might also make a difference.
I recently started a project over at sourceforge and I think that what they provide is really great. They give you all kinds of features like forums, news, trackers, and web site statistics via RSS. They will host a web site to promote your project. That hosting includes the ability to run a web application written in perl and access to your own database on a MySql server. With that much capability, I implemented the project web site using the source code of the project itself.
You also get ssh, sftp, and cvs (via ssh) access. I haven't run into any problems with updating the content. There is a web interface for downloading code but you have to use cvs for uploading. I don't know what problem the original poster was running into but I found no difficulties with it.
Flame wars aside, emacs is for developers and vi is for system administrators. I realize that there are plenty of developers that swear by vi; however, I still believe that is the target audience for these two tools based on their respective feature sets.
Obviously, you can run emacs in a pure CLI environment. That is not, however, where emacs shines. It shines in a windowing GUI environment. If you are a systems administrator who just needs to ssh or telnet into a couple of dozen servers today, look at some log files and adjust a configuration file or two, then vi is definitely the way to go.
If you are a coder who wants an IDE capable of color syntax highlighting, statement completion, block related indentation adjustment and other development related features that are somewhat consistent in a heterogeneous programming language environment, then give emacs a serious look. Yes, the macro record/playback capability is very handy too.
Thanks, Microsoft, for making this an issue. Had your lawyers not issued a C&D on this, /. most probably would not have posted this story and I would still not know about this cool add-in.
I can see them removing support for MS Team System on the Express versions but nothing else. IANAL but I don't see how integrating NUnit support into the IDE is a violation of anything. If MSFT didn't want you to extend their IDE, then they should not have published the EnvDTE or Extensibility assemblies.
My limited understanding of this area is that Team System still has some catching up to do before it can really compete with NUnit. MSFT should be grateful for TestDriven.NET because it fills a gap in VS.NET that comes standard with its competing IDE, Eclipse.
Even if MSFT succeeded in destroying TestDriven.NET, it still wouldn't crush NUnit which comes with its own GUI that is easy to attach to (and, therefore debug) from within the VS.NET IDE.
Right, to avoid any licensing restrictions for your commercial, closed source application that uses MySql as the database vendor, you don't bundle any of the MySql software but you do say in your installation documentation what they need to do to make MySql work with your software including what client libraries to download and install.
Let me provide an example. I just recently started an open source project. This is obviously not a great example because this project is open source and will always and forever be so. For the sake of illustration, let us pretend that it is a closed source application. The technology is HTML+Javascript on the client and traditional LAMP on the server. There is, however, a small J2SE command line utility included that is useful for publishing content by transferring it from a local instance of MySql to the instance of MySql that will serve the content to the intended audience. I don't bundle or include any MySql code with this project but I do mention in the README file that this utility depends on mysql-connector-java-3.1.14 (not included). Again, I am talking about an open source project but even if this was closed source, I would not be in violation of the GPL because I did not include the MySql driver. I only documented that it needed that driver.
Of course, in the case of a corporation wanting to acquire and deploy an application that uses MySql, they would prefer to purchase the commercial license. This is precisely why MySql provides one.