Presentation is loading. Please wait.

Presentation is loading. Please wait.

Free Your Mind Code.  Sometimes I write software in exchange for money (don’t judge)  Sometimes I write software in exchange for knowledge, experience,

Similar presentations


Presentation on theme: "Free Your Mind Code.  Sometimes I write software in exchange for money (don’t judge)  Sometimes I write software in exchange for knowledge, experience,"— Presentation transcript:

1 Free Your Mind Code

2  Sometimes I write software in exchange for money (don’t judge)  Sometimes I write software in exchange for knowledge, experience, as a favor, to teach, or just for fun

3  It lets you give back to the community you’ve probably already benefited from  You can take an existing tool and make it more contoured to your specific needs  It provides a means of “crowd sourcing” a solution to a problem  It can lead to a business model that makes money – just because the code is free, doesn’t mean the support is.

4  Wordpress  DotNetNuke  NHibernate  NAnt  NUnit  Linux  Notepad++  Apache Web Server  TeamCity  CruiseControl. Net  OpenOffice  Gimp  VirtualBox  Firefox  Thunderbird  VLC  Chromium  DOSBox  Mono  Moonlight  Vuze  MySQL  Pidgin  Paint.Net

5  The Arduino board

6  The originator of an open source project is often referred to as the coordinator  Someone modifying an existing open source project and committing their code change back to the repository is a contributor

7  Licensing  Hosting  Source Control

8  The many flavors of open source… ◦ BSD ◦ GPL ◦ Apache ◦ MIT ◦ MS-PL (also MS Shared Source…) ◦ And many, many more And many, many more

9  Software is considered Free Software when its license grants these freedoms: ◦ Freedom to run the program for any purpose ◦ Freedom to study and change the program (access to source code is a prerequisite) ◦ Freedom to redistribute ◦ Freedom to distribute your own modified versions

10  General Public License (GPL) ◦ Uses copyright against itself ◦ Makes sure that anyone who creates a derivative work can only release that work under the GPL  Recursive licensing! ◦ Some see this as a restriction of freedom to future developers ◦ Some see this as a guarantee of freedom to future users ◦ Who is right?  You decide!

11  SourceForge  Github  CodePlex  BitBucket  And More!

12  CVS, SubVersion, etc. are all good  Distributed source control really shines though ◦ Mercurial ◦ Git

13  I named it LaunchLater  It lets users defer the auto-start configuration of apps that boot with Windows  I know.Net, so I used.Net  I wanted to know WPF, so I used WPF  I wanted to earn a Nerd Merit Badge ◦ More on this later

14  Licensing ◦ GPL  Hosting ◦ CodePlex (http://launchlater.codeplex.com)http://launchlater.codeplex.com  Source Control ◦ Mercurial  I also use the TortoiseHg client, and it’s open source

15  This is pretty much just like developing proprietary software  I found myself almost subconsciously trying to make extra effort to conform to simple coding practices with the use of patterns wherever possible

16  MVVM ◦ Popular pattern that has been made famous through its application in WPF/Silverlight applications ◦ Gives you an intermediary object between the Model and the View that can be easily used for binding

17  Two main programs ◦ Configuration Manager  Allows the user to configure which apps start at boot and how long to defer them. ◦ LaunchPad  Starts with windows and executes the schedule of deferred apps to launch

18  Seriously, let’s alt-tab out of PowerPoint and see some real C# code

19  My code is better structured and more easily modifiable  Anyone who is already acquainted with the MVVM pattern can quickly pick up on how this software works  The more people who are easily able to improve the code, the more likely the code will improve without my help  What was that about a Nerd Merit Badge?

20  This is a real thing  You can find them at http://nerdmeritbadges.com http://nerdmeritbadges.com  I have one now ◦ Jealous?  I offered one to the first person to make a contribution to my project ◦ A guy named Jesse Brown won  Jealous?

21  Open source can be awesome  You’re likely already using it  I gained knowledge and experience that I might not have otherwise gained  I was able to take that knowledge back to the office and be more productive in my day to day work  Now others can benefit from my code

22  Use it  Change it  Improve it  Share it  Publish it  And even hate it ◦ And then spend hours talking trash about it in forums and tweeting about how completely God- awful it is and then compiling those tweets into one giant hate-blog.

23

24  My name is Jeff Cox  My twitter name is @jeffcox111  My email address is jeffcox111@gmail.com  My blog is at http://LiberatedSoftware.wordpress.com  LaunchLater can be found at http://launchlater.codeplex.com


Download ppt "Free Your Mind Code.  Sometimes I write software in exchange for money (don’t judge)  Sometimes I write software in exchange for knowledge, experience,"

Similar presentations


Ads by Google