1
I Use This!
Activity Not Available

News

Analyzed 4 months ago. based on code collected about 2 years ago.
Posted about 11 years ago
This blog post was created as a follow-up for those who have tried the new live beta application at play.wakanda.org. Wakanda has been presented as a full-stack solution for web and mobile development, but that description turns away some developers ... [More] At first, it even turned me away. I recently joined the Wakanda open-source project as a Developer Advocate. My first mission is to make Wakanda Server compelling for the experienced web developer who likes to code by hand. Wakanda Server is a multi-threaded web server as well as an object-relational, transactional, and thread-safe datastore that runs JavaScript. For C++ developers who want to dive into Wakanda Server's source code, you can find it on GitHub. Wakanda Server was designed by Laurent Ribardière, who has been designing and programming databases since the mid-1980s. I interviewed him for my radio show and… well now I work for him. Wakanda Server is really slick. But until now it has been stuck behind a “you need to use our IDE” wall. Even though Wakanda Studio (Wakanda's IDE) has grown on me, I want to focus on Wakanda Server right now along with a few additions in the Development Branch that make developing for Wakanda Server more liberating. A Screencast Walkthrough The example Wakanda project I use in the ServerCodeWaltz screencast is available on GitHub.  ServerCodeWaltz <- example code and Beta Server download instructions. Editor's note: To use ServerCodeWaltz, you need a specific build of Wakanda, as specified by Lyle in the above link. You can tell that we are changing things by opening Wakanda up to more developers. Leading the Wakanda development team as Product Director is Ricardo Mello whom I met last week at the San Jose office. He and I have some alignments and I really like the way he is improving the development cycle and the transparency of what the team is working on. I'm going to Paris next week to meet the development team, visit Laurent (hopefully geek out again on his latest enhancements) and get updates from Ricardo. I'll keep you all posted on what I discover. -Lyle [Less]
Posted about 11 years ago
Allow us to introduce you to a new member of the Wakanda team, Lyle Troxell. You may have met Lyle at the JS.everywhere() events in San Jose or Paris where, as our fearless MC, he introduced speakers and kept the show moving along. We liked him so ... [More] much (and apparently he liked us!) that he's now joined our team as a developer advocate. In this capacity, he will be the liaison for Wakanda with the developer community, driving the conversation between our company and you, the developer. Lyle has a broad interest in technology, and in addition to working with us, he hosts a show called "GeekSpeak" on NPR (National Public Radio) member station KUSP, and for the last 11 years has been teaching and supporting a high-tech arts program at the University of California, Santa Cruz. "I am very happy to be joining Wakanda as Developer Advocate," says Lyle. "I am a geek, and not ashamed to share my many passions: electronics, programming, theatre, photography, open source development, art; even raising chickens! I look forward to meeting and getting to know you all." Welcome aboard, Lyle! [Less]
Posted over 11 years ago
For all its simplicity and ease, Wakanda is a vast and wide-ranging platform with many layers of utility. Thus, we know you have a lot of questions about it. We field them every day in the Wakanda forum, via Twitter, and on Facebook, not to mention ... [More] your countless emails and phone calls. We are flattered by your enthusiasm! And now we'd like to introduce an all-new – and we hope fun – way to field your questions: via live webinar. Not only that, but you will be getting your answers right from the source: Founder & CEO Laurent Ribardière and Wakanda Product Director Ricardo Mello. Join us on Thursday, January 24, at 9:00 a.m. PST for this special event. Registration is free, so sign up now to reserve your space! Don't miss this opportunity to get the most pertinent and timely answers to your questions, which will come from the participants live during this session, as well as pre-submitted questions from the Wakanda community. Your questions can range from best practices in development to business processes, and everything in between. (You will be able to submit your questions after registration.) Register here, and we'll see you online soon! [Less]
Posted over 11 years ago
Fresh off of the smashing "Working with Data on the Client Side" webinar, Greg McCarvell is hard at work on his next installation, "Layouts and GUI Magic". He says, "Creating an appealing and functional layout within your Wakanda application is ... [More] critical. In this webinar, you will learn how to fully utilize Wakanda Studio to create great layouts." This free webinar takes place on Thursday, January 19 at 9:00 a.m. PST. There's no cost or obligation to participate, but you must register. Don't disappoint Greg. He's been missing sleep, meals – and probably much more – to show you the in's and out's of Wakanda, so sign up here to show your appreciation and to learn some really cool things, too: http://go.4d.com/layouts-gui-magic-wakanda-webinar.html See you on Thursday! [Less]
Posted over 11 years ago
A new build of Wakanda 3 (build nº 3.124119, issued December 19) is now available in the Production Channel. This latest production version of Wakanda 3 brings with it additional bug fixes to continually improve stability for developers and ... [More] end-users. Changes can be viewed in the change log on the download page. New users and those wishing to upgrade can download Wakanda at: http://www.wakanda.org/downloads To solicit support or to ask any questions, all users are encouraged to get involved with the Wakanda community at: http://forum.wakanda.org Premium support and unlimited, royalty-free deployment are available via the Wakanda Warrior subscription plan, available at: https://store.4d.com/wakanda/ To compare the community and paid versions of Wakanda, please visit: http://www.wakanda.org/licensing [Less]
Posted over 11 years ago
A new build of Wakanda 3 (build nº 3.122625, issued November 22) is now available in the Production Channel.  This latest production version of Wakanda 3 brings with it a number of bug fixes to further improve stability for developers and end-users. ... [More] All changes can be viewed in the change log on the download page. New users and those wishing to upgrade can simply download Wakanda at: http://www.wakanda.org/downloads  For support and to pose any questions, all users are encouraged to get involved with the Wakanda community at: http://forum.wakanda.org  Premium support and unlimited, royalty-free deployment are available via the Wakanda Warrior subscription plan, available at: https://store.4d.com/wakanda/ [Less]
Posted over 11 years ago
With our first stabilization build of Wakanda 3 now available in the Stabilization Channel, we are ramping up a new product cycle for an imminent release. With each new stabilization release, we're getting closer to a new production launch, so your ... [More] feedback is important. At the same time we are making a new resource available for our developer community: Wakanda Continuous Integration (CI), at http://ci.wakanda.org. This site provides increased insight to how we monitor the quality between our builds. Our goal is, of course, to achieve production-level stability as quickly as possible, and this will allow you to keep an eye on our progress. Stability is a hallmark of Wakanda 3, one of a number of new features and improvements include: Improved cross-device development experience for tablet, smartphone and desktop applications, including an enhanced Form Designer and improved touch event handling for mobile devices; Enhanced SSL security mechanism for Web pages on both the solution and application levels; IPv6 support for Wakanda Server; Compatibility with the Mac OS X 10.8 "Mountain Lion" Gatekeeper security feature, as well as optimization for Macs with Retina displays; Interface enhancements to the Code Editor A successful stabilization effort and approval for production is dependent on feedback, so we are requesting yours! Feel free to report feedback at http://bugs.wakanda.org or on the Wakanda forum. We are looking forward to a rapid testing effort leading to an all-new release of your favorite JavaScript stack!   [Less]
Posted over 11 years ago
Mountain Lion has just joined the club of the most popular felines in the world, and those of you who won't wait a single minute to install Mac OS X 10.8 will discover rather quickly one of the new features of the operating system called Gatekeeper. ... [More] Gatekeeper is designed to protect users from malicious downloads and by default blocks opening executables that haven't come from the Mac App Store or that aren't signed with a certificat formally identifying the developer via Apple. After upgrading to Mountain Lion, Wakanda applications already present on the disk will continue to function as normal, but for any Wakanda application downloaded thereafter, whether via online installer or DMG archive, the following alert will appear: There is, however, nothing prohibitive about this alarm as the blockage by Gatekeeper can easily be worked around, by either modifying the System Preferences and authorizing downloaded applications from any source (see image below) or, if you wish to maintain the default behavior, by using a Control- or right-click when opening the application. Important: In the latter case, you only need to perform this operation once; in the future, your preference will be recalled and the application can be opened normally. When you download Wakanda, you will need to authorize each initial launch of Wakanda Server and Wakanda Studio. Subsequent launches will be exempt from these controls. We are going to eliminate this constraint by including the Apple certificate required by Gatekeeper in upcoming versions. The implementation isn't complex but we must, as usual, perform numerous tests to be certain of its proper functioning under Wakanda, in all its configurations, on Mountain Lion. Of course, none of this should prevent you from roaring with pleasure when taking advantage of all the new features in Mountain Lion. [Less]
Posted almost 12 years ago
In line with our goal to provide you with a stable, secure platform and enhance your development experience, we are pleased to announce the availability of a new build of Wakanda (no. 2.115958) in the Production channel. We recommend all users to ... [More] update Wakanda Server and Wakanda Studio. In addition to stability improvements, this build updates Wakanda's authentication system, as well as the behavior of the default Admin and Debugger groups. The documentation for this feature has been updated and can be found here: http://doc.wakanda.org/Wakanda/help/Title/en/page3369.html Further changes and bug fixes in this build are documented at: http://download.wakanda.org/ProductionChannel/v2/Windows/115958/ChangeLog.txt Happy coding! The Wakanda team [Less]
Posted almost 12 years ago
The Matrix. You know. The Matrix. With an "M". Sure, you know it! In three main ways: You're a mathematician and you handle matrices of N dimensions all the day. (It's good to know some people can play with matrices all day without a ... [More] headache). Or you're a big fan - as I am, I've seen it a dozen times - of the movie. I'm emphasizing the because, well, it's one of the best movies ever. Or you're a Wakanda programmer - or just having a look at it - and you know about the Matrix Widget. And that's all(1). Today, I'm going to talk about the third. You've already used it, seen it, heard of it on the forum, in screencasts and so on. For a quick reminder, I'll let you have a look at this screencast. See you in two minutes. . . . (two minutes pass) . . . Wasn't that cool? This widget perfectly illustrates the wakanda of Wakanda(2): You declare your dataclass, you bind it to a widget and voilà! Spend 100% of your time developing the business logic of the application, while Wakanda handles the rest: Connect to the server asynchronously, get the data, fill the widget. At this point I should insist on the fact that the data displayed in a widget doesn't necessarily have to come from the datastore. A widget can display about any data from any kind of source, and some widgets don't even bind to any datasource. For example, you can just drag and drop a checkbox (say its id is checkbox1), to test whether it is checked or not by calling the getValue() widget API, which returns true/false in this context. if($$('checkbox1').getValue()) {     // . . . do something if the box is checked . . . } The same thing occurs with the Text Input widget. Say you have a textField1 widget. To get its content, you can call $$('textField1').getValue(). You can also use jQuery to get the value: $('#textField1').val(). But I personally recommend using the Widget API, because if the internal structure of the widget changes for some internal technical reason, your code will not break. Which is a good reason, isn't it? Back to today's topic. There are two kinds of datasources: Server datasources and local datasources. Saying "server datasources" speaks for itself. The data displayed in the widget will be fetched by the WAF in WakandaDB, and there will be a client/server communication. A local datasource, on the other hand, means the data exists only in memory in the browser. And it's the developer's job to fill in this data, say "manually." The fact that a source is local doesn't mean that it's not persistent data. The developer can fill his local sources with data fetched on a server. For example, one can query different dataclasses and merge the result in local arrays displayed in a grid. Now let's illustrate this with my beloved super-killer-widget, starting with a quite simple example. I want to display in the matrix images that are in my images/forMatrix folder: To quickly display those images in a matrix, here are the steps (a screencast running the whole thing is coming): Create a new page(3) Create a new datasource of kind array, name it imageURLs Add one attribute to this array, url, type string Drag and drop an image widget In the "source" property, enter imageURLs.url Drag and drop a matrix and put this image in it You can find here the solution that implements all this here, and take a look a the code and pages. At this point, you have everything in place. Just like you could have done if you wanted to bind the picture to a server datasource, actually. You now need to fill this matrix, which means to fill the imageURLs array: Add a button, and a script for its "on clicked" event Now we fill the array of URLs. Here is the code var countOfImages = 42, // This number rules the world     i; imageURLs = []; for(i = 1; i <= countOfImages; i++) {      imageURLs.push( {url: '/images/forMatrix/' + i + '.png'} ); } // Tell the datasource to tell the widgets using it to update // their content (here, just the matrix) WAF.sources.imageURLs.sync(); Run the file, click the button, and enjoy displaying images that are not in the data file. Here is the screencast of the whole thing: This is the "matrix-1.html" page of the example solution. Now, I've done this quickly. Of course, for a better user interface and so on, you will probably want to put the image widget in a container, and maybe you'll add a label too. This is done by adding an attribute to imageURLs, for example, label. Then you use a static text widget and bind it to imageURLs.label. Filling the matrix uses quite the same code. Here, the new part is highlighted ("matrix-2.html" in the example): var countOfImages = 42,      i; imageURLs = []; for(i = 1; i <= countOfImages; i++) {      imageURLs.push( {url: '/images/forMatrix/' + i + '.png',                       label: i + 'png'} ); } WAF.sources.imageURLs.sync(); Obviously, you could insert this code for the onLoad event of the page. And if you remember that high level widgets such as the Matrix and the Grid fill their content with asynchronous paginated request, you can be very comfortable filling your array with hundreds of thousands of elements. The Matrix will not ask the browser to load all the images in one shot. Isn't the Matrix amazing, wherever it comes from, whether math, movies, or Wakanda?(4) (1) Some would argue there are other kinds of matrices. And I agree. But I found it so cool to list the widget next to other famous usages of the word. (2) Remember that Wakanda means "inner magic" in Sioux. (3) Or nothing will really work. Inner magic, yes. Inner Auto-Creation of Pages By Reading Your Mind, no. Not yet. (4) Just realizing I'm finishing the article with a question. So, I'm giving the answer: "Yes, it is!" [Less]