/
index.html
136 lines (118 loc) · 9.54 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>Nimbus: Main Page</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
$(document).ready(initResizable);
</script>
<link href="stylesheet.css" rel="stylesheet" type="text/css" />
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-24278774-1']);
_gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
</script>
</head>
<body>
<div id="page">
<div style="position:relative">
<div id="top"><!-- do not remove this div! -->
<a href="http://github.com/jverkoey/nimbus"><img style="position: absolute; top: 0; right: 0; border: 0;" src="https://d3nwyuy0nl342s.cloudfront.net/img/e6bef7a091f5f3138b8cd40bc3e114258dd68ddf/687474703a2f2f73332e616d617a6f6e6177732e636f6d2f6769746875622f726962626f6e732f666f726b6d655f72696768745f7265645f6161303030302e706e67" alt="Fork Nimbus on GitHub"></a>
<div id="titlearea">
<a style="float: right;margin-right:100px;margin-top:20px" href='http://www.pledgie.com/campaigns/15519'><img alt='Click here to support Nimbus development and make a donation at www.pledgie.com !' src='http://www.pledgie.com/campaigns/15519.png?skin_name=chrome' border='0' /></a>
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td style="padding-left: 0.5em;">
<div id="projectname">Nimbus
 <span id="projectnumber">0.3.4</span>
</div>
<div id="projectbrief">An iOS framework whose growth is bounded by O(documentation).</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- Generated by Doxygen 1.7.4 -->
</div>
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
initNavTree('index.html','');
</script>
<div id="doc-content">
<div class="header">
<div class="headertitle">
<div class="title">Nimbus Documentation</div> </div>
</div>
<div class="contents">
<div class="textblock"><h1>What is <a class="el" href="interface_nimbus.html" title="The Nimbus state interface.">Nimbus</a>?</h1>
<p><a class="el" href="interface_nimbus.html" title="The Nimbus state interface.">Nimbus</a> is an iOS framework that grows only as fast as its documentation. Its roots stem from the Three20 framework and much of its code is forked from Three20, though with meticulous care and thought.</p>
<p>In short, you'll find a number of features within <a class="el" href="interface_nimbus.html" title="The Nimbus state interface.">Nimbus</a> to accelerate your development of iOS applications. <a class="el" href="interface_nimbus.html" title="The Nimbus state interface.">Nimbus</a> will be evolving quickly over time so it is likely in your best interest to simply browse the documentation by checking out Nimbus' <a href="modules.html">Modules</a>.</p>
<h2>Getting Started</h2>
<ul>
<li>Learn how to <a href="group___setup.html">add Nimbus to your project</a>.</li>
<li>Check out the README for <a href="https://github.com/jverkoey/nimbus/tree/master/examples/gettingstarted/01-BasicSetup">the introduction sample project</a>.</li>
<li>Follow <a class="el" href="interface_nimbus.html" title="The Nimbus state interface.">Nimbus</a> through its <a class="el" href="group___version-_history.html">Version History</a>.</li>
</ul>
<h1>Three20 was garbage though, why would I use <a class="el" href="interface_nimbus.html" title="The Nimbus state interface.">Nimbus</a>?</h1>
<p>Three20 most certainly has issues. Among them:</p>
<ul>
<li>Relatively zero documentation.</li>
<li>Spaghetti dependencies.</li>
<li>Suffering from a "kitchen sink" complex.</li>
<li>Complex build structure.</li>
<li>Enormous number of difficult-to-solve bugs.</li>
<li>Low test coverage.</li>
</ul>
<p>But for its weaknesses, Three20 does provide a good deal of value through its feature set. It is used in over 100 apps in the app store by companies such as Facebook, LinkedIn, Posterous, Meetup, and SCVNGR.</p>
<p>The goal of <a class="el" href="interface_nimbus.html" title="The Nimbus state interface.">Nimbus</a> is to one day provide this same value through its feature set. Along the way, infinitely more value will be provided in better documentation, better test coverage, and a smaller learning curve.</p>
<h1>What are the plans for <a class="el" href="interface_nimbus.html" title="The Nimbus state interface.">Nimbus</a>?</h1>
<p>I'm a strong believer in shipping early, shipping fast, and shipping often. Any other way of being genuinely frustrates me so I hope to apply this to <a class="el" href="interface_nimbus.html" title="The Nimbus state interface.">Nimbus</a>.</p>
<p>I plan to tackle <a class="el" href="interface_nimbus.html" title="The Nimbus state interface.">Nimbus</a> by first building a strong foundation in the <a class="el" href="interface_nimbus.html" title="The Nimbus state interface.">Nimbus</a> Core. From there I will branch out and tackle migrating a variety of features over from Three20. Some features on my immediate horizon in increasing order of difficulty:</p>
<ul>
<li>The Launcher (done!)</li>
<li>Network images (done!)</li>
<li>TTNavigator.</li>
</ul>
<p>For each day that I work on <a class="el" href="interface_nimbus.html" title="The Nimbus state interface.">Nimbus</a> I hope to have a pseudo-stable build that I can push out and summarize the changes since the previous day's build. For this reason I will likely use a <b>MAJOR.MINOR.SCORE</b> version model.</p>
<p><b>Major</b> version numbers will be reserved for major milestones in the project (completing a large set of features, for example).</p>
<p><b>Minor</b> version numbers will be reserved for minor milestones in the project (completing a small set of features, for example).</p>
<p><b>Score</b> version numbers will be reserved for stable cuts of <a class="el" href="interface_nimbus.html" title="The Nimbus state interface.">Nimbus</a> after individual tasks are completed (fully implementing the Launcher, for example).</p>
<p>I'd like to treat the score version number like points from a video game. Finishing an individual task will increase the score for a particular major release, so version 1.130.2 indicates "the first major release of Nimbus, 130 tasks tackled, and 2 incremental builds
for bugfixes and daily progress since the 130th task was finished". Perhaps there may be some merit in allowing people who complete tasks to earn these points in some sense as well to encourage some friendly competition.</p>
<h1>Who's working on <a class="el" href="interface_nimbus.html" title="The Nimbus state interface.">Nimbus</a>?</h1>
<p><a class="el" href="interface_nimbus.html" title="The Nimbus state interface.">Nimbus</a> was started by me (Jeff Verkoeyen) in June 2011. My background includes over 10 years of software development and experience at Google and Facebook designing software and building user interfaces. I took over the Three20 project in 2009 after its original creator, Joe Hewitt, moved on to other projects. Over the proceeding 6 months much time was invested in splitting the framework apart and attempting to clobber its spaghetti dependencies while improving the project's documentation.</p>
<p>In early May of 2010, my life was completely shaken up: my mother suddenly passed away at age 42 due to a pulmonary embolism. This is relevant because for the following year I checked out of life and, as a direct result, little progress was made with Three20. Over the last year I've found that shedding baggage is not only an emotionally satisfying process, but also a necessary one. So I am shedding Three20's baggage and out of the remaining bits building <a class="el" href="interface_nimbus.html" title="The Nimbus state interface.">Nimbus</a>. I learned a lot about working with an open source project and community and sincerely hope to carry much of this knowledge over to <a class="el" href="interface_nimbus.html" title="The Nimbus state interface.">Nimbus</a>.</p>
<h1>So what about everyone who's still using Three20?</h1>
<p>My goal with <a class="el" href="interface_nimbus.html" title="The Nimbus state interface.">Nimbus</a> is to eventually provide a feature set that contains Three20's. I sincerely hope to make it easy for anyone using Three20 to transition to <a class="el" href="interface_nimbus.html" title="The Nimbus state interface.">Nimbus</a>. In the meantime, Three20 will likely stay in a bug-fixing state. The library is stable as it stands so I have every bit of confidence in the community to tackle any bugs as necessary. </p>
</div></div>
</div>
<div id="nav-path" class="navpath">
<ul>
</div><!-- .fixedwidth -->
<span class="footer">Generated for Nimbus by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.4 </span>
</ul>
</div>
</div> <!-- page -->
</body>
</html>