I have started a new blog on my iOS/OSX experiences with MonoTouch and MonoMac over at https://tirania.org/monomac.
Posted on 30 Nov 2010
David Reveman had a great birhtday present for me today. He just completed the hardware accelerated support for Moonlight.
In Moonlight hardware acceleration is used for a number of features:
Although Silverlight is able to accelerate some pixel shaders, Moonlight is able to accelerate all custom pixel shaders.
The code currently lives on GitHub and we are doing daily builds of Moonlight for users interested in trying it out.
Posted on 23 Nov 2010
MonoDevelop 2.4.1 has been released. This release is focused mostly on bug fixes, but we still managed to add a few nice features:
Check out our release notes for the details about our changes.
Posted on 22 Nov 2010
Tomas has also created an organization for F#, it currently hosts the MonoDevelop F# Add-In, and we are going to maintain there F#'s changes that we make in the open source world to get it tuned for Linux and OSX.
Posted on 17 Nov 2010
It occurs to me that in this whole debate over angels and VCs, there is an important third option that is missing from the table and I have been referring to it colloquially as "Social Network Offering", or SNO.
The idea is that instead of raising money directly from an angel investor or a professional venture capitalist, you raise money through a network of friends, acquaintances and contacts in the industry.
The startup to-be creates a prospectus with some basic information like the business they are in, the execution plan, and the capital requirements to go from startup to profitability, acquisition or another exit strategy.
So far, that is not any different than any other financing option available for a startup. The difference is how the share holders are invited into this process. Instead of being a closed door event where the angel or the vc sets the terms, the founders of the company set the terms for the investment as well as the initial round of capital that they are trying to raise and offer this to the social network.
The Social Network Offering round would be setup through an escrow system that would give different investors a chance to participate in the first round of finacing, and if enough startup capital is raised in this phase, the money is given to the company and shares are distributed to the investors. If the startup fails to raise enough capital, the money is returned to the investors.
Social Network Offerings are transparent in nature. They would not work well if you are trying to create something in secret, something that nobody has ever heard of, since you would need a level of secrecy for this to work. But it would work great for business built around open-core, or business where the strategy is to do it better than existing offerings.
If you have a social network of friends that can help you raise this kind of cash, the advantages are:
There are also some downsides to go with Social Funding: VCs can help you get a seasoned executive team in place, they assist you by filling the gaps during the early stages of the company, they let you tap into their network of companies and resources and they will not hesitate to course-correct any ideological problems that do not necessarily blend well with becoming profitable.
If you had a chance to invest on a high-tech startup, how much of your own money would you be willing to put up-front for something like this?
Fill my survey here.
Update: On twitter, @eoinh pointed out that one company already did something like this. They used Linked-In to raise 350,000 dollars through their contacts, and found matching funds from the government raising the total to 700,000.
Posted on 17 Nov 2010
The add-in provides intellisense for MonoDevelop, inline documentation and access to the F# interactive shell. Most of the heavy lifting is done by the F# compiler itself which is used directly by the Add-In as a service:
His blog also has screencasts on getting F# and the F# add-in installed on Linux and also shows how to create Gtk# applications with F#:
Check his blog for more details.
Posted on 16 Nov 2010
Ruben is organizing the talks, if you want to present, please submit a proposal for a presentation.
There are plenty of topics to discuss: Gtk# and the Gnome desktop; MonoDevelop and MonoDevelop add-ins; Mono Runtime; Languages: Iron*, UnityScript, C# 4, F#; Server programming with Manos or ASP.NET.
Posted on 15 Nov 2010
Paolo has checked into Mono's GIT repository our brand-new profiler for Mono applications.
The new profiler is documented in detail here, and is available with Mono 2.9+ (this means: it is available if you build Mono from GIT, and will be part of the upcoming 2.10 release).
We would love to hear your feedback on it, and we hope to have a UI integrated into MonoDevelop soon.
Update: This is what one of the reports of the new profiler can produce, this is taken from running an ASP.NET application (a question that came up a few days ago on IRC):
Heap shot 5 at 14.518 secs: size: 43684432, object count: 562907, class count: 543 Bytes Count Average Class name 10506984 87373 120 System.Collections.Hashtable.Slot (bytes: +1939272, count: +16161) 87346 references from: System.Collections.Hashtable 8130304 87486 92 System.Int32 (bytes: +1706912, count: +16164) 87346 references from: System.Collections.Hashtable 40 references from: System.Collections.Generic.Dictionary
30 references from: System.Globalization.NumberFormatInfo 6846000 57050 120 System.Web.Caching.CacheItem (bytes: +1232880, count: +10274) 4891432 87347 56 System.Collections.Hashtable (bytes: +904176, count: +16146) 28526 references from: System.Web.HttpStaticObjectsCollection 28525 references from: System.Threading.ReaderWriterLock 28524 references from: System.Web.SessionState.SessionStateItemCollection 1597344 28524 56 System.Web.SessionState.InProcSessionItem (bytes: +287672, count: +5137) 28524 references from: System.Web.Caching.CacheItem 1597344 28524 56 System.Web.SessionState.SessionStateItemCollection (bytes: +287616, count: +5136) 28524 references from: System.Web.SessionState.InProcSessionItem This heapshot was taken 14.518 seconds after application startup, at the time there were 562907 objects in the heap, of 543 different types, using about 43 MB of memory.
Posted on 11 Nov 2010
Last week, Don Syme announced that Microsoft has open sourced the F# compiler and the F# core libraries under the Apache 2 license.
In addition, on Tuesday, Don also announced a new release that fixes a handful of bugs specifically for users targeting Mono.
F# is a fascinating language, but I had not really spent much time with it as we could not really distribute it as an open source compiler limiting its usefulness in the Linux and Mac worlds. Now F# can become just another language that developers can use.
F# supports asynchronous programming today, and it was the inspiration for C# 5.0's async support. There is no need to wait for C# 5 to come out, you can start using async workflows today with F# everywhere.
At the F# in Education workshop Tomas Petricek announced his MonoDevelop add-in for F#. Although he has not released a binary add-in, the source code to his plugin is available here. It provides intellisense, parameter documentation, on-the-flight error underlying and support for the F# interactive shell from the IDE.
Our plan is to distribute F# as part of Mono for both OSX and Linux. This will take some time, in the meantime, check fsxplat.codeplex.com for instructions on how to get started with F# on MacOS and Linux.
It will likely run out of the box on Mono/Android and Mono/Wii. Since F# uses generics extensively, we do not know if it can be used to target the iPhone or the PS3 as both require Mono's full static compiler. We will be evaluating this in the coming weeks.
Don, minutes after open sourcing F# enjoying a tasty meal.
These resources are straight from Don's blog:
Posted on 11 Nov 2010