Download presentation
Presentation is loading. Please wait.
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.
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
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.