There are about 80 Xojo-related open-source projects that I am tracking on the Xojo Dev Center: Open-Source Projects. I often have people ask me how they can make their own cool libraries and projects available on GitHub, so here’s a short tutorial.
As most of you know, this past Saturday morning, the people of Hawaii got a shocking notification on their smartphones warning of a incoming ballistic missile and that this warning was not a drill. I can only imagine the fear that raced through the minds of more than a million people. This warning, as well all now know, turned out to be a false alarm accidentally set off by a state employee who was attempting to perform an internal test.
In programming, iterators are the mechanisms that allow us to walk all the members of a collection without needing to know in advance how many of them compose such a collection; and for that we can find in Xojo the commands
For Each… Next. What are the main differences in comparison to the conventional
The first difference is that with
For Each… Next we can’t assume that we are iterating the members of the collection in order, as it is the case when using the variable of the conventional
For… Next as the Index in order to access a known member of the collection. The second difference is that the iterator will be invalid when the iterated elements are modified, or when we modify the amount of elements in the collection during the iteration process.
By default in Xojo, there are a couple of collections that are iterable: the already mentioned Arrays and also Dictionaries and FolderItem.Children. Wouldn’t it be great to extend this feature so we can add this behaviour to our own classes making them more flexible? The key to making this happen is using the two Class Interfaces already included in Xojo: Iterator and Iterable.
At XDC 2016 there was a lot of interest in Joe Ranieri’s Compiler session where he talked about compilers and LLVM. After talking with Joe we decided to put together a series of blog posts on compilers. These are at a high-level. None of these posts are going to teach you how to write a compiler. The goal of these posts is for you to have a basic understanding of the components of a compiler and how they all work together to create a native app.
This is the second post in our ongoing series on compilers. I recommend that you first read Compilers 101 – Overview and Lexer before continuing.
At XDC 2016 there was a lot of interest in Joe Ranieri’s Compiler session where he talked about compilers and LLVM. I’ve already summarized a bit about LLVM in an earlier post, but after talking with Joe we decided to put together a series of blog posts on compilers.
These will all be at a high-level. None of these posts are going to teach you how to write a compiler. The goal of these posts is for you to have a basic understanding of the components of a compiler and how they all work together to create a native app.
Some of the most recent features added to Xojo, including iOS, 64-bit apps, and Raspberry Pi have been made possible by LLVM. Read on to learn more about it.
During the Obama administration, internet service providers (ISPs) were reclassified as Telecommunication Service Providers. This meant that they would be treated like phone companies, as common carriers with all the regulation that implies. Prior to this they were classified as Information Providers which clearly made no sense since ISPs provide the network, not the actual content. Most importantly, Net Neutrality prevents ISPs from providing paid fast lanes which would allow companies to pay ISPs to make traffic to their site faster than traffic to other sites.
Though marketing may not be your forte, there are things you can do that are very effective in promoting your app and building your customer base. You can try some of the paid options and get varying results, but there are many free things you can do that can have a huge impact. We’ve already blogged about using Twitter to market your app for free.
Here’s a list of 8 additional ways your marketing team of 1 can promote your app at no cost: