Are these two 2008 & 2009 Dojo books hopelessly out-of-date/worthless? - dojo

About 5 yrs ago I bought 'Practical Dojo Projects' and 'The Concise Guide to Dojo' (Wrox.) But these 2008 & 2009 books don't even mention which version they are written for. I now have a project I want to do in Dojo. Are these books of any use today or will they just confuse me because of the major changes in Dojo ? Should I just wait (maybe 2 years or more ???) for Dojo 2.0 to be released ?

What is written in these books is still valid but outdated.
Thanks to a very good backward compatibility from Dojo, almost all what you will read in the books can still be used.
However, Dojo syntax has changed and even if the legacy syntax (the one in the books) is still valid, they now encourage you to use the AMD syntax.
this page will help you "converting" the syntax in the book into the more modern syntax. Appart the syntax change, almost all what you learn in the books is still valid.

Most programming books are outdated especially if they were writing ~8 years ago. Your best bet is to read their docs, recent tutorials, or any articles about the framework. Also make sure the community around the tool is still active and that you can get support if you get stock anywhere in the middle of dev your new app.

Related

resources to study smalltalk and pharo?

I have downloaded the pharobyexample.org ebook, but it seems out of sync with the latest release of pharo, also I would like to know about resources which can help me learn smalltalk.
While a bit outdated (or a lot :P), PharoByExample is still the best way to learn you can find around. You can download the image provided in the web page: http://www.pharobyexample.org/image/PBE-OneClick-1.1.app.zip (is not very visible, I'm sorry), and use it to learn... then you can jump to the latest version and you will find all you learned will apply with almost no change :)
You can find other sources to learn, but they are much more distant to the "up to date" versions you can find around: http://stephane.ducasse.free.fr/FreeBooks.html
You also can look around: http://pharo.org/documentation, there are some good stuff there (including links to Pharo by example, of course!).
Finally, you can also suscribe to pharo-users#lists.pharo.org list... is a list where you can make any questions you want.
Yes there is an updated PBE that you can find here
https://ci.inria.fr/pharo-contribution/view/Books/job/UpdatedPharoByExample/lastSuccessfulBuild/artifact/book-result/UpdatedPharoByExample.pdf
other books you can use is this
http://deepintopharo.com/
and this
https://ci.inria.fr/pharo-contribution/job/PharoForTheEnterprise/lastSuccessfulBuild/artifact/EnterprisePharo.pdf
there are also books you can build by yourself, those are created by executing the download.sh and then the compile.sh scripts. The first script will download Pillar which is a Pharo library that can generate html files.
Building the docs yourself is a very good idea if you want to get the very latest docs for Pharo.
Those books can be found here
https://github.com/SquareBracketAssociates
if you want to also generate a pdf then you will need to install Latex depending on your OS.
All together there is a ton of documentation out there. Unfortunately because most books are very recent , there has not be care to make it easily accessible and visible to newcomers.
pharo-users#lists.pharo.org is also the place to ask for questions if you get stuck in pharo-by-example. If you find any problems with the book, we would certainly like to know about them.
You can also ask questions on IRC (as i have seen you doing) but you need to hang out longer to get any answers. Most pharo users and developers are in different timezones, so they are not usually awake at the same times as you.
update: a while ago the pharo community moved from IRC on to discord. you can find the link on the pharo community page: http://pharo.org/community

What do I need to build a DLL?

I'm having a number of issues, and the current one is overcoming a security exception when using iTextSharp.
This article
http://www.junlu.com/list/27/763977.html
To which I was directed following this question I posted yesterday:
Displaying a bar code with iTextSharp using Chris Love's Barcode Handler (2 part)
Seems to be what is required to overcome my problem. But I have searched and searched and cannot find a definitive and simple answer to the question "How do I compile a DLL"
So, having made the suggested modification to iTextSharp, I need to make it into a single DLL.
I have absolutely no idea how to do this, despite an hour of Googling!
I'm using Visual Web Developer 2010 Express. Which according to my searches does not have any built in capability to do this. So... how do I?!
Do I NEED to download Visual Web Developer Pro? I can surely download the free trial and use that, but going forward, I don't especially want to have to download a pay-for program to do this as it's a rare occurrence for my needs.

Migrating from Dojo 1.1.1 to Dojo 1.3/1.4

We are in mid of a project where we have used an extended Dojo 1.1.1 to meet the customer requirement and add richness.
But there are quite some bugs and performance problems with this version of Dojo and
we are looking ahead to migrate the Dojo version to overcome both the issues, but the migration cycle seems to be quite painful and may not be yield expected result.
The concern we have is with the various extension which we have created with the version of Dojo for components that were provided in 1.1.1 and the impact on them after migration.But, the advantage we see are equally important.
As per Dojo , they have kept some level of compatibility with version 1.1.1 but i have not seen any discussion around this anywhere.
Has any body else previously done
migrated between Dojo version?
Will the components like Grid will
work as expected or will i need to
carry out a refactoring exercise?
Do we have any commercial support
available as the forum seems to
deprecated?
Any help or suggestions are welcome
Dojo has had a policy of freezing and supporting public APIs since 1.0. Migrations prior to 1.0 were extremely painful. Now, it should be much better, provided you use only public APIs. Code written for stable JS APIs in Dojo or Dijit in 1.1 should largely still work. Exceptions are noted in the release notes, which you should explore (good luck finding them... unfortunately the site is a bit of a mess)
If you wrote any custom widgets, you're probably in for some extra work. dojox.grid was not particularly stable at that point, and it has also seen a major rewrite since then (there is an old 'compat' layer you may wish to use)
Regarding for forum, like the note says, you can either use the active dojo-interest mailing list or post questions here at SO. There are some firms which offer commercial support, but that's outside of the scope of Dojo as an open source project. (try googling 'Dojo commercial support' or asking on dojo-interest)
I have done 5 dojo migrations now (from 0.2 -> 1.4) over the last few years. Although the API does not change, you will often have coded in workarounds that no longer work after upgrading. Things I have noticed:
quality in 1.4 is VERY good and worth
upgrading to (even from 1.3)
although
the API does not change, little
things that are not public often
change slightly (diji.Tree
itemNodeMap -> itemNodesMap in 1.4)
build options are usually added each
release but not always publicised -
strage really as they are always
useful improvement
since you are 1.1.1, you should change all your set attribute calls to 'attr' - this could take a while to do.
As for commercial support, you could try Sitepen

Where Can I Find Demo/Sample Code For Perl 6?

I've got myself a copy of Rakudo and I'd love to give it a test drive. After looking around the Internet I found some code snippets of cool Perl 6 stuff, but no complete scripts. Any sites that make practical Perl 6 scripts available would be appreciated.
Thanks guys, Ehtyar.
Please check out the perl6-examples repository from http://github.com/perl6/perl6-examples/tree/master, it contains many nice examples.
Also don't hesitate to join #perl6 or irc.freenode.net if you have any questions (or perl6-users#perl.org if you're more the email user).
Sometimes there are also very nice examples on the Perl 6 blogs out there, most of them are collected on http://pl6anet.org.
See also Perl 6 examples on Rosetta Code.
This page at the Perl foundation covers new features very well. Specifically "The Long Perl 6 Super-Feature List" (Which isn't actually very long, it explains what new features will be coming in bullet points). If you are specifically looking for new features only, that is the place to look as opposed to sifting through mounds of sample code and dissecting new features.
There are some good smaller examples on this page that will demonstrate new features without an elaborate amount of code.
A great place for other perl6 stuff is the Perlgeek blog; there are several articles and examples there, including a functional grammar for JSON parsing...very cool.
As Robert mentioned, the Perlgeek blog has some great articles. I've written a couple articles myself, but they mostly cover specific things of Perl 6 (classes, methods, etc).
You can look at the Using Perl 6 book, which is freely available as a pdf here. It has lots of code examples for the concepts and features it covers. The book is also available in the docs directory of the latest Rakudo * release.
Also, I'd recommend looking through the spec tests. If you have Rakudo * installed they should be in rakudo/t/spec. They are organized by the synopsis, which can be a little confusing. However, the benefit from looking through them is great, you'll get a chance to see multiple examples of how to use concepts in Perl 6 that you know work in your current build because you can run the test.
Resources I think helpful at the time of writing this comment (June 2015), listed from most to least QA'd:
examples.perl6.org.
Short one liners article.
Perl 6 advent calendars.
jnthn's talks eg "Perl 6: what can you do today?". Good resource for examples of concurrency.
Perl 6 entries at Rosetta Code. Many of these are written by Larry Wall.
Modules on modules.perl6.org.
Perl6Maven. Contains snippets and a long, incomplete, partly bitrotted P6 tutorial, but the site's owner (Gabor Szabgab) has said he intends to build out his P6 content this year (2015) so it's worth at least a quick visit.

What software tools did Apple use to make the iTunes Store?

I've enjoyed using the iTunes Store but I'm curious on what it was developed on (PHP & MySQL, Something Custom?).
WebObjects. It comes with XCode these days, but used to cost over $50 000! Not sure about the database backend. I seem to recall reading that it was Oracle, but I don't have a source and may have just accidentally made that up.
Joe Nuxoll former apple employee on the java posse pod cast has mentioned that they use web objects.
#Stephen Darlington is correct, it's WebObjects. The WO code generates pure Java, which is further optimized. The code has been rewritten a couple of times.
Interestingly, Dell's original BYO website was written in WebObjects, the $50,000 version back in 1996.
iTunes store is a mix of a lot of technologies, but the main one is Apple's WebObjects. WebObjects is rock solid java framework including a lot of mature technologies (templating, ORM).
WebObjects is free (correct me if i'm wrong), can be installed virtually on every platform and is not restricted on MacOSX.
WebObjects is mainly developped using eclipse and a plugin called WOLips.
There is a very active community behind this framework and the development tools.
Some links :
The official WebObjects community website
The WebObjects/Wonder/Wolips community wiki
yeah its webObjects, also you can use multiple database sources with WO and you can combine other languages with it such as JS and php
In reality webobjects has been overlooked for some time now, mainly because of its past price and that it has not been well marketed by apple
I think whatever answer you get will be 99% speculation. I would bet that if someone really did work for Apple and did have the facts they wouldn't be allowed to share them.