Intel in Macs (2007) - <AUTHOR> https://www.apple.com/sg/intel/ <comment><USER2> "On the very day the company officially announced its first Intel-based product, Apple's stock price closed at $80.86"

How cool!

[https://www.techdirt.com/articles/20060110/1818234_F.shtml](https://www.techdirt.com/articles/20060110/1818234_F.shtml)

<comment><USER3> The stock split 7-for-1 in 2014, so $80 in 2006 is about $11 per current stock, which is worth $372 today.

It's been a great time to own Apple Stock!

<comment><USER4> It's generally been a good time to own the stock for the last two decades ;)

<comment><USER5> While true, spectacularly so for Apple. If you had bought shares of the company instead of a new base-model PowerBook G4, you'd have over $700k today.

If instead of a "founders' edition" Tesla Model S you'd bought shares of Tesla, you'd have enough money for fifty Teslas today.

If you'd bought NDVA shares instead of Nvidia's best GPU in 2009 ... you still would not be able to afford Nvidia's current best GPU. Hrmm.

<comment><USER6> In 1999 at the age of 18, just before going to University to study Software Engineering I spent all my savings from my first job on a Beige G3 233Mhz. The box was $3k, the 17 inch Apple/Sony Trinitron another $1500. Dad drove it home in his car that was worth less than the contents of the big cardboard boxes.

Sometimes it's fun to calculate how much I'd have if I spent those 1999 dollars on APPL.

<comment><USER7> Well, I did some BTC mining on my atom board in the day. Also there is that guys that bought a pizza for 10K btc.

</comment></comment></comment></comment></comment></comment><comment><USER8> I have some big nostalgia for that hero-banner image -- the pretty blue swooshes. I remember trying to replicate that style, watching hours of 3:2 480p tutorials in Paint.NET and Photoshop CS, so I could have the coolest signature in whatever php web forum I was haunting at the time...

<comment><USER9> Now this battery icon.

[https://www.macrumors.com/2020/06/23/macos-big-sur- battery-h...](https://www.macrumors.com/2020/06/23/macos-big-sur-battery- history-and-estimates/)

<comment><USER10> Holy cow, that icon is fugly...

<comment><USER11> I know sometimes new designs need some time to "grow on you". I do not believe this is one of those times.

<comment><USER12> It's painfully bad enough that I have to assume it will change before release.

<comment><USER13> It could very likely be a placeholder.

<comment><USER14> I know Apple can be pretty staid but for a beta I am assuming (and hoping) that they're taking the piss on that.

</comment></comment></comment></comment></comment></comment></comment><comment><USER15> Just to go a little further back, a contemporary TidBits article about the original PPC Macs. [https://tidbits.com/1994/03/14/the-power-macintosh- picture/](https://tidbits.com/1994/03/14/the-power-macintosh-picture/)

<comment><USER5> Some seriously ripe claim chowder on that blog regarding the imminent 25x performance of the PowerPC 620, due in 1996 at the latest!

<comment><USER16> Lower-power CPU's rising to the occasion to crowd out high end chips is a recurring theme in the industry, but especially for Apple! 620 never got anywhere because the 604 variants were better and then the 603-based 750 (G3) was a lot better. G5 never got anywhere because not the Pentium4, but the Celeron-derived CoreDuo was a lot better! Now abandoning Intel because iPad ARM CPUs are a lot better!

<comment><USER15> The 603's were _horrible_. With the slower cache and I believe they had less cache memory, the 68K emulator crawled. Back then, most of the OS itself was still emulated.

</comment></comment></comment></comment><comment><USER17> Haha, I'd be more nostalgic if I hadn't bought a 68000-based Mac just before the announcement that Apple was transitioning away from Motorola in the 90's. Same baloney about releasing additional (Motorola-then / Intel-now) models during the transition. It very quickly became an expensive boat-anchor. I think I was still paying on the loan I'd gotten it since I was a poor college student working auto repair to make ends meet.

I'm excited about the move to the new processor. Also super glad my 2013 MBP has had a good run. It's still totally adequate. 'Course that's a problem isn't it?

It'll be interesting to see how the year turns out for Apple - seems like you'd be nuts to buy an Intel Mac now, right?

<comment><USER18> Just think how pissed you'd be if you just dropped 6k on a new Mac Pro that will be obsoleted in 3 years. Not speaking from experience, no sir.

<comment><USER19> I'm not sure why anyone would be pissed. If you need the Mac Pro then you're happy because you have a Mac Pro. If you don't need it then why did you buy it in the first place? People don't randomly buy a Lamborghini when what they really want is a Toyota Prius.

<comment><USER18> That's a terrible analogy, and regardless, buying any of the Intel range of Apple machines today is going to see them being literally incapable of running macOS once Apple decides to dump support. With some work you can run Catalina on a 2008 machine, 12 year old machines can still be coaxed into staying relevant. I expected that a 2019 Mac Pro would last more than (at best) 5 years, but given how Apple treats pros these days I fully expect them to drop Intel support completely in 3-4 years.

<comment><USER20> PowerPC Macs were able to run the latest MacOS for 4 years, after the announcement, then Apple provided security updates. Your Mac Pro will be a useful device for over a decade, just like my 2009 iMac.

And it's much more likely that Apple extends this period for x86 than shortens it, given they might not be able to support Windows on Apple Silicon. And because they might need more than 2 years to build Apple Silicon Macs with performance as high as the Kac Pro.

</comment></comment></comment></comment></comment><comment><USER4> Ha, this is cute :) Looks like the Rosetta link still works too: [https://www.apple.com/sg/rosetta/](https://www.apple.com/sg/rosetta/). Never really got to try it much, as I didn't really use Macs back then, although I'm curious if anyone from that time knows what the "oah" name stood for.

<comment><USER21> > Pro applications from Apple — including Final Cut Pro, Motion, Soundtrack > Pro, DVD Studio Pro, Aperture, Logic Pro, Logic Express, Shake and Final Cut > Express — are not supported by Rosetta.

Huh, I wonder why that was.

<comment><USER22> Those were the showcase programs, and I've heard that Apple didn't want the Rosetta performance hit to impact people's experience with them.

<comment><USER21> Was it just an artificial blacklist then? Could you hack it?

<comment><USER23> Even with this one there's some metadata you can set to force it to use rosetta 2 or not. I don't know if there's a way you as the user can force it the other way without hacking the kernel.

</comment></comment></comment></comment></comment><comment><USER24> My very first Mac was the very first Intel Mac Mini, I remember at the time disputing getting a PPC Mac Mini instead for software compatibility. I'm glad I didn't. I was a long time Windows fanboy and that Mac Mini converted me.

That machine is still kicking, my dad was using it for web browsing until earlier this year. Firefox was for a long time the only modern browser he could use, and then even that stopped supporting 32 bit Macs.

<comment><USER25> The G4 Mac Mini was the slowest new computer I've ever owned. It was barely usable for anything.

<comment><USER26> It's now possible to install OS 9 on it thanks to some clever hacking. It's a speed demon.

<comment><USER27> What's the hardware support like?

</comment></comment></comment></comment><comment><USER28> "Transition accomplished"

I miss the days when Apple's taglines were always witty (they're still sometimes witty, but not consistently so.)

<comment><USER29> The subtitles are also "The new Mac core", "Four on the floor", and "Dual- roar", which rhyme.

Four on the floor is also a type of manual transmission system in vehicles (4 gears, shifter on the floor). Additionally, as I just learned, it also has meaning in music

<comment><USER30> "Four on the floor" makes an appearance in the Beach Boys' "Little Deuce Coupe"

        She's got a competition clutch with the four on the floor
        And she purrs like a kitten till the lake pipes roar
        And if that ain't enough to make you flip your lid
        There's one more thing, I got the pink slip daddy

I had no idea what Lake Pipes were:

[https://en.wikipedia.org/wiki/Exhaust_system#Lake_pipes](https://en.wikipedia.org/wiki/Exhaust_system#Lake_pipes)

<comment><USER31> And in "Go Grease Lightning" from the film Grease (I shouldn't admit to knowing this).

        A fuel injection cutoff and chrome plated rods oh yeah (I'll get the money I'll kill to get the money)

        With a four speed on the floor they'll be waiting at the door

        You know that ain't no shit we'll be getting lots of tit

        In Grease Lightning

</comment></comment></comment></comment><comment> yjftsjthsd-h From the days when 2 cores on a chip was impressive:) (And it _was_!)

<comment><USER32> Now I have a 12 core cpu in my desktop wondering if I should have got the 16 core one.

<comment> yjftsjthsd-h The future is an amazing place to live:D

<comment><USER33> Meanwhile, the Ghz have barely budged an inch! They even seem to have gone down in some cases! ;)

<comment><USER34> Even if Ghz haven't changed, IPC is much higher so you'll still see huge increases in single-thread performance!

<comment><USER35> Don't worry, Electron will take care of that increase.

</comment></comment></comment></comment></comment></comment><comment><USER36> Back in the days when Macs were #1 and the iPhone was a figment of Steve's imagination.

<comment><USER15> By 2005, the iPhone was definitely in development.

<comment><USER37> The iPad was, for sure, the iPhone is a spinoff from the iPad project.

<comment><USER38> Since the iPhone was released in 2007 and the iPad in 2010, I'm going to suggest your timeline is backwards.

<comment><USER39> "Jobs later said that Apple had begun developing the iPad before the iPhone.[27][28]"

[https://en.wikipedia.org/wiki/IPad#History](https://en.wikipedia.org/wiki/IPad#History)

<comment><USER38> Yeah, they'd messed with a clunky tablet for years. Then they finally developed a glass display that scrolled with touch and thought, "This would be better in a phone." I don't know if that really qualifies the iPhone as a "spinoff" of the Folio, or the Folio as even a predecessor to the iPad.

<comment><USER20> Folio was going to ship, but Jobs canceled it because it wasn't good enough yet but let the team adapt it to a phone.

And I worked on the Pen Mac about fifteen years prior, so with that and Newton, Apple was working on the concept forever.

</comment></comment></comment></comment></comment></comment></comment><comment><USER40> So what is the future of Hackintosh?

<comment><USER4> Probably secure for the next couple years as Apple continues supporting their current Intel lineup. After that, perhaps we'll have more Corelliums pop up.

</comment></comment><comment><USER41> [https://web.archive.org/web/20200709070612/https://www.apple...](https://web.archive.org/web/20200709070612/https://www.apple.com/sg/intel/)

</comment><comment><USER42> There seems to be quite a few of those remnants on the apple.com site, every few months I feel like I see one of these links for old school content and themes :)

</comment><comment><USER43> This was a real blast from the past. I got my first Mac a little after the switch and i remember reading through a lot of these pages back in the day.

<comment><USER44> I really miss the old days when there was no real concept of data collection, not big ad-tech companies pissing over a good set of goods and services, just pure tools that worked (and sometimes they didn't).

What happened, humans?

<comment><USER45> Those humans won some battles but lost the war. Need new people to fork known- good points on that timeline, using open protocols and code.

[https://www.eff.org/deeplinks/2020/02/gopher-when- adversaria...](https://www.eff.org/deeplinks/2020/02/gopher-when-adversarial- interoperability-burrowed-under-gatekeepers-fortresses)

[https://news.ycombinator.com/item?id=23042424](https://news.ycombinator.com/item?id=23042424)

</comment></comment></comment><comment><USER46> Where can I get one of these sweet looking number crunchers?

<comment><USER26> Craigslist

<comment><USER46> Thanks. I have a more recent model, so I'm actually good.</comment></comment></comment>


Game of Life in one Ruby statement inspired by APL - <AUTHOR> https://zverok.github.io/blog/2020-05-16-ruby-as-apl.html <comment><USER2> I wish Ruby was "the data science language" tbh. Ruby has some of the most beautiful and concise idioms of any language. I remember the first time I learned procs, blocks and lambdas my mind was blown with how elegant ruby solutions to problems can be. It's a shame I have to use python instead.

<comment><USER3> Agreed. Ruby is more consistent than Python IMO, and has especially beautiful semantics for the list processing.

It's interesting, Ruby can be a bit more performant too. I discovered this when I taught some ML stuff to a ruby group, and converted some Q Learning programs and maze navigating stuff from Python to Ruby, and was surprised to see the Ruby version run around 1.3-1.8x faster depending on what the code was doing. It's not enough difference to really matter, but it just reinforced my "aww shucks" feeling that Ruby could have served that ecosystem very well.

<comment><USER4> All the performance benchmarks I've seen over the years have shown Python to be significantly faster than Ruby. Keep in mind it doesn't matter a whole lot as the scientific stuff calls out to C or Fortran anyway.

</comment></comment></comment><comment><USER5> Here's a version of Game if Life I wrote in ruby ages ago that was inspired by APL in a, uh, different way: [https://gist.github.com/burke/1428424](https://gist.github.com/burke/1428424)

<comment><USER6> This is terrible and wonderful. Thank you. I feel truly blessed to have seen this. It won't open a gate, will it?

<comment><USER5> Never has for me but YMMV. Maybe a salt circle just out of an abundance of caution.

</comment></comment></comment><comment><USER6> While I think this is helpful as a way to understand the APL original, the title is sort of false advertising.

It's sort of not one Ruby statement if it starts with

        require 'apl'

and uses some APL::Ary class that, as far as I can tell, isn't in the Ruby standard library. I was hoping to see how Enumerable enabled this, not how you can implement APL in some arbitrarily large amount of Ruby code offscreen, because of course you can do that.

<comment><USER7> The APL module is in the `lib` directory of the repo holding the code, you can see the implementation there.

It wouldn't be that bad to pull all the library code out into the 'main' command, but it would lose the 'single statement' impact and probably be harder for people to follow along with.

<comment><USER6> Aha, I thought maybe it was an existing gem.

Anyway, I think it probably _should_ lose the "single statement" impact, because in that context it's just misdirection, magician's patter. Yes, a single Ruby statement can invoke an arbitrarily complex piece of library code written for the article, but that doesn't tell you anything interesting about either Ruby or how to use it — the same is true of any programming language that supports programs in multiple modules, even assembly language:

        start: CALLQ play_life

Now, the particular statement in question is considerably more illuminating than that, but presumably if you wanted to do almost anything else in an APLish style in Ruby, you'd probably have to implement more operations in apl.rb. I see that it doesn't include, for example, scan, slicing, or any broadcasting operations other than +, &, and |. (*, -, and / are missing, for example.)

I mean, I've certainly written worse implementations of APLish operations. You could certainly extend apl.rb into something practically useful. I just don't think it's fair to put four pages of code in one file and then direct people's attention to the single statement in another file that invokes it.

<comment><USER8> That "ofcourse" you can implement Game of Life in one statement if you implement (parts of) the standard library of APL is not obvious to many people. The point of the blog is to introduce people to the concepts of APL, not to pitch some innovation.

As a Ruby programmer who already knew about APL, I thought the title exactly matched the article. I was pleasantly surprised at how clean he designed the apl library, and the nice explanations.

<comment><USER6> Oh, I guess that's true. I remember when I was a kid I didn't have any idea how the BASIC interpreter worked either, and I didn't have any idea about how to build a tower of abstractions. So surely there are Ruby programmers who hadn't thought of trying to implement APL primitives in Ruby (especially if they haven't seen NArray.) Still, Ruby is pretty big on building embedded DSLs, so I'd think novice programmers learning Ruby would encounter that idea pretty early on.

But there's always today's lucky ten thousand! I hope I didn't make any of them feel condescended to. Welcome to the wonderful world of implicitly parallel vector operations!

</comment></comment></comment></comment></comment><comment><USER9> How does the performance stack up against APL's 1000 generations of a 1000-by-1000 world in under a second? [https://aplwiki.com/wiki/John_Scholes%27_Conway%27s_Game_of_...](https://aplwiki.com/wiki/John_Scholes%27_Conway%27s_Game_of_Life#Performance)

</comment><comment><USER4> This is a pretty nifty piece of work. Not really a oneliner if it requires a 1/4 page of code, but I'll let it slide :)

I do like the concept of keeping I/O in a more traditional language and the matrix/array code in something closer to APL.

<comment><USER10> This is why it says one statement, not one line.

I've written single-statement argument parsers that take up most of a page of code.

I like this because I've barely written more Ruby than APL (none of the latter) but it's perfectly legible to me.

I respect the APL family and think the notation-as-a-tool-of-thought camp has a lot going for it. I'm just illiterate in that language.

</comment></comment><comment><USER3> This is very cool, and as an interesting side effect, it helped me understand exactly what's going on in the "famous" APL code. Well done!

<comment> dan-robertson Well mostly but the explanation forgets to mention the ravel (comma/array flatten) operator in the comment section and the article doesn't really explain the inner product bit (matrix multiplication in the rig of or and and), which I think is more confusing. In particular the 1 ω part.

<comment><USER11> (author here) I noticed the thing about flatten an hour ago and fixed it (somehow thought +/, is "reduce 2 times", then understood it is flatten + reduce, and my lib already had flatten, so it was easy to fix). As for "inner product", I just haven't found suitable Ruby metaphor and fell back to zip+reduce, which seems to be equivalent.

</comment></comment></comment><comment><USER12> Wow, this is beautiful! Thanks for sharing.

Btw I love that Ruby methods return a value, so method chaining works so good. That's something I appreciate in Mathematica's postfix notation (for instance `x // Sin`), and also what I love in R's pipe operator, Unix's pipe. So many other languages like Elixir offer it. Unfortunately this does not work out-of- the box in my beloved Python.

<comment> dan-robertson Do you mean that ruby methods _are_ values and so they can be passed to functions?

<comment><USER12> They _return_ a value, like functions.

<comment><USER13> Is this not normal?

<comment><USER12> No, it is not. Python's `my_list.sort()` will sort the list in-place without returning the sorted list. If I wanted to have a return value (without changing the original list), I'd have to use `sorted(my_list)`.

</comment></comment></comment></comment></comment><comment><USER14> Quite a good intro to ruby. Wonder can one do one line lisp as well.

</comment><comment><USER15> Why is Ruby so popular here at HackerNews, I just don't get it!

<comment><USER16> Off-topic, sorry, but could you please stop creating accounts for every few comments you post? We ban accounts that do that. This is in the site guidelines: [https://news.ycombinator.com/newsguidelines.html](https://news.ycombinator.com/newsguidelines.html).

You needn't use your real name of course, but for HN to be a community, users need some identity for others to relate to. Otherwise we may as well have no usernames and no community, and that would be a different kind of forum. [https://hn.algolia.com/?query=by:dang%20community%20identity...](https://hn.algolia.com/?query=by:dang%20community%20identity&sort=byDate&dateRange=all&type=comment&storyText=false&prefix&page=0)

<comment><USER15> got it</comment></comment></comment>


Ask: Do You Use Software for API / Architecture Design? - <AUTHOR>

I've spent the last 6 months doing a lot of high level Architecture and API design. Most of my thought gathering, brainstorm and sense making exercises have involved a whiteboard.
Whiteboards are awesome because you can draw and express ideas easily and freely, but the sketches are hard to save and catalog. I've tried UML and digital white board tools and frankly the input mechanisms really cumbersome and slow down the whole process.
Is there any tool out there that leverages the freedom of a whiteboard, while still remaining digital? <comment><USER2> Check out Rapido! by Ronnie Mitra. It's a personal project of his and it's not quite ready for production. But he was looking to scratch the same exact itch and developed something himself for "sketching APIs."

<comment><AUTHOR> Hey thanks a lot. You wouldn't happen to have a link or anything? All I could find was a slide deck.</comment></comment>


Get Rid of That Code Smell – Primitive Obsession - <AUTHOR> http://solnic.eu/2012/06/25/get-rid-of-that-code-smell-primitive-obsession.html

<comment><USER3> There's another code smell that every programming whiz kid produces at some point: over-engineered.

All code has a cost, primitives have a lower base cost because they are universal in the language and thus every programmer will automatically know how to use them. Before introducing a custom object with yet another API to be learned, you need justification.

> _Implement Money class if you need to deal with money, it's much better than > using floats all over the place. Don't use Hash for configuration objects, > use a custom Configuration class instead._

Let's pretend he said integer since floats for money is outright broken. Yes, Money is a clearcut case where having a money-specific API is both intuitive and immediately useful.

Configuration on the other hand is debatable. If you're just doing things a hash does then it's fine. If you find yourself with lots of helper methods or repeating the same transformations over and over then that's when you have a code smell that may warrant lifting configuration to its own level.

But the critical thing is to remember that there's a non-trivial cost to creating domain-specific objects.

<comment><USER4> The justification is simple, to allow for testing concerns the code uses. I see domain specific objects the same way I see domain specific languages - <USER2> I cannot grasp it by looking at it then it's broken, meaning I should not have to read documentation but simply understand the domain the object / language represents e.g sinatra get()... etc.

<comment><USER3> You state that as if it's a universal justification, but the same standard applies. If your code enough is simple enough to use primitives, then you're unit tests are testing the next higher level of abstraction. If the complexity rises to the level of justifying it's own class, then you should probably have unit test coverage on that.

Also, regarding DSLs, there is a tradeoff there that's worth commenting as well. A DSL pays the most dividends when the domain is understood (such as HTTP in the case of Sinatra), but if it's custom business logic than there may not be enough common business understanding for a DSL to be intuitive, and in that case it's just another layer of indirection to follow through as you inspect the code to figure out what it's actually doing. Half-baked DSLs are harmful IMO.

</comment></comment></comment><comment><USER5> This is _exactly_ the opposite of the advice recently given by Rich Hickey in his keynote at RailsConf 2012, where he strongly recommends using simple, transparent data structures without a lot of OO wrapping baggage.

Personally I'm on the fence but when you look at how much boilerplate this Virtus example needs to get rid of the code "smell" you have to wonder if maybe he has a point.

<comment><USER6> Rich is so spot-on. Here's a variant of that talk: <http://www.infoq.com/presentations/Simple-Made-Easy>

And funnily enough I had the itch to say I'm a primitive obsessive today: [http://williamedwardscoder.tumblr.com/post/25916255470/taxon...](http://williamedwardscoder.tumblr.com/post/25916255470/taxonomer- of-programmers)

It almost feels like a reply to this post, but it was an coincidental bit of pontification.

</comment></comment><comment><USER7> Do not hastily judge sticking to primitives as bad. Here's a relevant SICP quote:

 _"The simple structure and natural applicability of lists are reflected in functions that are amazingly nonidiosyncratic. In Pascal the plethora of declarable data structures induces a specialization within functions that inhibits and penalizes casual cooperation. It is better to have 100 functions operate on one data structure than to have 10 functions operate on 10 data structures."_

</comment><comment><USER8> The potential danger in computationally intensive code is that you have a number of wrappers around the actual data (e.g. in the article AttributeSet wraps a hash table), each requiring a pointer dereference and a vtable lookup.

So, IMO it depends on the language features available and the scenario whether it is a code smell. For instance, Haskell allows you to introduce a new type whose data representation is the same as the original type using _newtype_ [1]. In contrast to a type alias, _newtype_ makes a different type, but it still allows you to define functions on that type in terms of the original type (using the type's constructor). If you want to hide the underlying representation, you simply do not export the constructors from the enclosing module.

tl;dr: in Haskell you do get a better abstraction without the overhead. I am pretty sure many other language can do as well (private inheritance in C++?).

[1] [http://www.haskell.org/onlinereport/decls.html#datatype- rena...](http://www.haskell.org/onlinereport/decls.html#datatype-renaming)

</comment><comment><USER9> It's an interesting article, but I'm not really sure this is the best approach. In terms of having the 'best' code that is 100% OO then sure, but in terms of actually having usable, understandable, code I'm not sure I agree.

If you return a Hash of attributes everyone knows how a Hash works, but if you return a custom Attributes object people have to learn how it works, there could be bugs, etc.

<comment><USER10> We needed a set-like data structure with enumerable interface that would also know how to handle attributes from parent classes. That's why a custom object worked better.

oh and since it's an enumerable it's easy to work with it just like with a hash.

I'm also not saying you should never ever use primitive objects because that would be silly :) The trick is to determine when it is better to use a custom class instead of misusing existing primitive ones. Hash is a good example in Ruby, people use it way too often.

</comment></comment><comment><USER11> I understand about making code more clear, but I'm not sure adding complexity/boilerplate solves that in every case- the even more extreme case would be to do away with the class entirely and just have a hash type property that gets passed around.... his very verbose counter-argument is the other extreme, and while I see his point, I tend to want to start with the property and only move towards the "rich object" when I'm sure that it's the best solution....

<comment><USER10> I think people miss the fact that I wrote about a code smell, which means a potential problem in your code. I don't say you shouldn't be using primitives. I say that there are cases where you should use rich, custom objects, that will simplify your code and improve design.

<comment><USER11> absolutely there are those cases, maybe it was just an over simplified example.

Although I also wouldn't say that it _simplifies_ your code... What it does is make the api to that class/object more explicit. At the very least you are keeping the complexity level the same, but you might also be making it more complicated. If you're just talking about the idea of OO encapsulation in general, that's another thing.... Not that I disagree that an explicit api is a good thing.

</comment></comment></comment><comment><USER12> just make it work, as simply as possible.</comment>


5 years C-pound experience (2004) - <AUTHOR> http://thedailywtf.com/Articles/5_years_C-pound_experience.aspx

<comment><USER2> Rest of the issues aside, seems a bit silly to harp on his pronunciation of the language's name. If you work on stuff on your own it seems easy to never hear someone else say the name out loud.

</comment><comment><USER3> C-pound, priceless :D

I wonder if anyone ever got _C-hash_?

<comment><USER4> When I was first learning programming (age 12), I originally read it as "C number" (Since # is sometimes used to denote numbers, e.g. telephone #) until I heard someone say it out loud in a video I watched a few months later. Luckily, I never actually programmed in it, so I didn't have an opportunity to make a fool of myself.

</comment></comment><comment><USER5> The problem here seems a bad headhunter, the candidate took his chance...</comment>


Hacking Team breach summary - <AUTHOR> http://countuponsecurity.com/2015/07/23/hacking-team-breach-summary/

<comment><USER2> so just the stuff we knew... xko</comment>


Free HTML Starter Templates for Bootstrap - <AUTHOR> http://startbootstrap.com/ <comment><USER2> This is really awesome, thank you for sharing this! In particular it's great to see the "Simple Sidebar" [0] example — I was just about to have to build one of these, so having a complete reference to work from is really helpful.

[0]: [http://startbootstrap.com/templates/simple- sidebar#](http://startbootstrap.com/templates/simple-sidebar#)

<comment><USER3> Yeah. That is my favorite as well. In fact I created my own version with sidebar at [http://bootmystrap.com/](http://bootmystrap.com/) to sell.

I find that Twitter Bootstrap is probably not the best framework when you are designing single page apps but it works.

<comment><USER4> Hey, what are you using for charts? Very cool .

<comment><USER3> Chart JS [http://www.chartjs.org/](http://www.chartjs.org/)

</comment></comment></comment></comment><comment><USER5> For those who want scrolling webpages these seem nice.

But it's scrolling web pages again, which seem to be all the hype in 2013 just as flash intros have been some years ago. Aren't there any nice templates NOT following current styles and offering structure for content?

I have to update the web page holding my CV as I have updated it in 2006 the last time. Woah, how dated would my page look in 2019 if I use a silding page now.

Oooh, and I just imagine hacker news as "2013-glitz" page. Bling, bling, look we can scroll stock photos from a cheapo stock photo site. One carousel per story, two HERO UNIT words of headline. This story would show some cool young guys at a mac, one pointing, HERO UNIT reads "Starter HTML."

Scroll down half a mile to see the next story.

BTW. any predictions what the post-flat-parallax-photo-sliding web trend will be?

Sorry to be a party pooper, but I saw one scrolling page to many and I'll rant about these from now on regularily. The last straw that happened to me (a Java developer) was [http://spring.io/](http://spring.io/). It's so low on content that its information-vaccum might endanger the universe by sucking in all other data leaving all but a low radiation void.

</comment><comment><USER6> Personally I think the Bootstrap templates at wrapboostrap ([http://wrapboostrap.com/](http://wrapboostrap.com/)) look far better and give you a much better starting point. Sure these are not free, but for a one- off website typically cost about $20 which is peanuts.

<comment><USER7> Hi. I made Start Bootstrap. I agree that Wrap Bootstrap offers much better finished products than my tool. The purpose of my tool is to start with a somewhat blank slate.

Buying a template is like buying a finished painting and sticking it in a custom frame. Building a site from scratch is like painting your own painting.

Start Bootstrap is kind of like getting a paint-by-number. Some of the work is done, and the elements are there for you. If you want, you can just use the default styles and make it look okay, but if you're a bit more experienced as a painter you can make it look even better by adding some of your own style.

I definitely think that if you're looking for a nice, clean, completed template then head over to [http://wrapbootstrap.com](http://wrapbootstrap.com) and check out their selection! If you're looking for something a bit more barebones, then [http://startbootstrap.com](http://startbootstrap.com) is built for you! :)

<comment><USER8> Hi, I logged in to thank you for start bootstrap. I'm not from US and 20 $ isn't peanuts its about 1500 bucks with which i can host an entire website for 1 year( in my country). I really love your bare templates, and will start using them from my next project.

Thanks again for all the good work and keeping them free.

<comment><USER7> That's awesome. Thanks for using my templates. I'm adding more every week, so be sure to keep checking back!

</comment></comment></comment></comment><comment><USER7> Wow...I'm speechless. You guys are awesome for looking at my site, and jalan (whoever you may be), thank you for posting a link to my site on HN!

If you have any suggestions for templates that you'd like to see added to the mix, feel free to let me know.

Thank you again guys, you're all so awesome!

<comment><AUTHOR> Thanks for making such a wonderful initiative. You guys (at Start Bootstrap) rocks!

<comment><USER7> We're just getting started. My short-term goal is 100+ templates. From there we'll see where things go!

</comment></comment></comment><comment> at-fates-hands I always find it interesting when there is a TON of articles on HN about building things from scratch, doing things yourself and essentially taking the slightly longer road for a better product.

I see a lot of these "starter templates" coming out almost as fast as new Javascript libraries. While I can see a benefit for some developers, I often wonder if the art of building a fast, responsive website from scratch has been lost in the sea of mass production website building.

Or is this just the wave of the future that I need to just deal with??

*EDIT: thanks for the advice from everyone. It does makes sense to have these ready made solutions so you can focus on what you really want to make great about the site or app you're building.

<comment><USER9> Sometimes you're more interested in building the higher level part than the lower level part.

If my goal is to build a great CMS for Rails, does it ultimately matter if I chose to use a Start Bootstrap template for my views?

<comment><USER10> I have lots of experience with CMS and have also contributed to a CMS and still do QA. Yes, Sir it is a very important decision unless you give your users a very easy way to replace it for the front- and backend. People really often come and want to extend things in the backend, that leasds to customizations and some companies prefer white-labeled CMS's.

</comment></comment></comment><comment> alok-g Some newbie questions:

Why do responsive themes/websites often collapse the top navigation bar into a menu button a lot before the space available becomes too short to hold it?

It sounds to me that the default action with both Bootstrap and Zurb is to stack the columns when the width is smaller, or possibly make them disappear completely. Is my understanding correct? If so, is this behavior customizable? Could one for example make a right column come on top instead of the bottom when the columns are stacked?

<comment><USER3> If your column comes before in HTML then it will come before when everything is stacked up in mobile resolutions.

The behavior to hide something is of course customizable. Bootstrap comes with certain classes [0] which can hide the content on mobile screens and show on desktop.

[0]: [http://getbootstrap.com/css/#responsive- utilities](http://getbootstrap.com/css/#responsive-utilities)

<comment> alok-g Are you saying (reminder, newbie here :-)) that it is possible to have a column come before in HTML and still appear right on the screen? Else, this means it is not possible to change the order in which the columns stack beyond what can be achieved using a nested grid.

The link above does suggest why the navigation bars collapse too soon sometimes (and sometimes too late). The collapse event is tied to the horizontal resolutions at 768, 992 and 1200 px, and does not depend on how much width the navigation bar actually needs (such that it is collapsed only when space available for it is too small).

I wonder why things are built this way though.

<comment><USER3> If the column comes before in HTML then it will appear before as well according to the Bootstrap conventions laid out. However you are more than welcome to throw that all out and have the column to appear left, right, top, bottom wherever you want with simple CSS.

In terms of navigation, it is tied to resolution because it's easier to change code than to change devices owned by your users :)

</comment></comment></comment></comment><comment><USER11> There's no sense in using these templates when you can make a template as per your requirement using template builder like [http://www.layoutit.com/build](http://www.layoutit.com/build) which lets you build your template using drag and drop.

<comment><USER12> I'm not sure, but your comment suggests you might be involved with the project?

Also, no drag & drop UI is substitute for design common sense and flexibility.

<comment><USER11> No, I am not involved in the project, I just like it as I dont have to worry about my UI while implementing an Idea. I wanted to quote more examples so as not to sound as if I am advertising it but couldnt find any other free service, rest all are paid.

</comment></comment></comment><comment><USER13> This is great, I'd recommend pairing it with Bootsnipp [1]. It seems pretty feasible to almost create your own custom theme out of StartBootstrap, BootSnipp and a few other items from the Big Badass List [2] by just cut-n- paste - but I wish there were a "real" cross project build system.

1 - [http://www.bootsnipp.com/](http://www.bootsnipp.com/) 2 - [http://www.bootstraphero.com/the-big-badass-list-of- twitter-...](http://www.bootstraphero.com/the-big-badass-list-of-twitter- bootstrap-resources)

<comment><USER14> Creator of Bootsnipp here, in fact the new Bootsnipp that I am building will be something along the lines of snippets+ interactive prototyping + hand coding if needed. Anybody will be able to build up on existing templates right there on Bootsnipp, no code editor needed.

</comment></comment><comment><USER15> Question for people using this: why use something like this rather than a ready-made professional template from something like Themeforest?

<comment><USER16> Because you might not have the budget for a Themeforest theme ?

Extended licenses, which you need for a Saas product, are around $800 or $900, which is affordable for a business (still way cheaper than hiring a designer), but far from free.

<comment><USER17> That's not necessarily true, as answered here [1]. Choosing the right license depends on how your SaaS product is setup.

[1] [http://themeforest.net/forums/thread/picking-up-the-right- li...](http://themeforest.net/forums/thread/picking-up-the-right- license/34666)

</comment></comment></comment><comment><USER18> Does something like this exist for Zurb Foundation?

<comment><USER19> [http://foundation.zurb.com/templates.php](http://foundation.zurb.com/templates.php)

<comment><USER18> Perfect, thanks!

<comment><USER19> the templates have been there forever but [http://patterntap.com/code](http://patterntap.com/code) is a new one and discovered it myself only today :)

</comment></comment></comment></comment><comment><USER17> This looks great. One issue popped up: a 403 on [http://startbootstrap.com/templates/business- frontpage.html](http://startbootstrap.com/templates/business-frontpage.html)

<comment><USER7> Thanks for pointing that one out. I will have to fix that ASAP.

</comment></comment><comment><USER20> this is nice, really good examples of base stuff that can be achived with bootstrap -- but I kinda feel like using these misses the point of bootstrap in that you should be able to piece together whatever look you're imagining in your head with bootstrap by hand. Learn the code/use the code & quickly build stuff -this cuts a corner that could be handy in a super rush but as always, learning the framework by building yourself can give you intimate understanding

<comment><USER21> I'm pretty familiar with foundation, but the other day I found their template page and was stoked to have a starting point with the header and some divs already in place for me. It was nice and responsive and I could focus on styling those areas. The extra push is the entire purpose. And when templates strike that perfect balance between generic / specific I think it's both time saving and inspiring.

</comment></comment><comment><USER22> Very nice! What would be great is if you accepted contributions from the community. Also I was looking for a bootstrap template this weekend for a site with the logo above the navbar but wasn't able to find a good free example.

</comment><comment><USER23> Really like the site, and love the templates! I definitely went in with the pre-conceived notion that this was going to be another bootswatch clone, but I really like it!

</comment><comment><USER24> I'm not really seeing the point of this per se. Bootstrapping something that's already called Bootstrap? And then having to bootstrap that to make it unique?

<comment><USER7> Yeah I guess this is the one main criticism that I get with this. The first few templates that I added to the site were my own personal templates I used for projects, and I just decided to share them and see what kind of response I got because I didn't like the amount/quantity of the starter templates that Bootstrap had to offer. The response was good, so I kept going, but I do see your point.

I mentioned up in another post that using Start Bootstrap, or using Bootstrap at all for that matter, will never replace the artistic capability, uniqueness, and flexibility of designing a project from scratch.

</comment></comment><comment><USER25> I was planning to design my website today. Looks like Universe has responded !. Thanks for such an awesome templates. Web is a beautiful place because of u guys !

</comment><comment><USER26> Congrats! It really good idea to make starter templates. Your project creating big value and can have good future if you add templates regular.

<comment><AUTHOR> It's not my project. I am not involved with this project, in any way. I just shared this project, because I found it very useful. Glad everyone liked it.

<comment><USER7> Thank you! I am glad you found Start Bootstrap useful. If you have a personal suggestion for a template please let me know and I'll build it for you! Email me at email@example.com and make sure you mention it's jalan from HN. I'll make whatever you want to the best of my ability!

<comment><AUTHOR> Thanks a lot. I do appreciate all the hard work, you are putting into open source community. It's people like you, that make this open source community wonderful. And yes, will surely ask for your help, as my hands are weak in UI part. :)

</comment></comment></comment></comment><comment><USER27> Thanks! This is awesome. I'm always looking at the official examples whenever I start a new project. This is so much better.

</comment><comment><USER28> Is this cool or what?. Very nice! I can see people learning how to code with this also by seeing it done the right way.

</comment><comment><USER29> Congrats, this is very useful. One thing I'd recommend is adding an option to subscribe to a weekly newsletter.

</comment><comment><USER30> Simple template is great for a data driven website.Little to distract from the graphs/info. Many thanks

</comment><comment><USER31> This really helps with shaving of tedious design and layout work for devs who really just want to ship their app.

Thank you!

</comment><comment><USER32> Good job! Very easy to navigate with lots of useful items. Thank you.

</comment><comment><USER33> These look good, thanks for this free service.

</comment><comment><USER34> Awesome resource, thanks.

</comment><comment><USER35> Really useful. Thank you.

</comment><comment><USER36> Awesome!

</comment><comment><USER37> great! :)</comment>


The Myth of Energy Breakthroughs  - <AUTHOR> http://gregor.us/nuclear/the-myth-of-energy-breakthroughs/

<comment><USER2> I have to disagree with a lot of what gregor is saying about energy breakthroughs.

His concept of a "Built Environment" I don't think is a limitation in the developed world, and many of the technologies we are seeing are small scale energy production for the developing world.

Where BloomBox and TeraPower come in is that much of the distribution or materials are already 'built'. With BloomBox, I don't think it is unrealistic to get a natural gas line to most places in North America. With respect to TeraPower, there is VAST ammounts of depleted nuclear material that is currently considered 'waste'.

Bloom has the further advantage of not needing a distribution system, as the energy can go right from the box (source) to the user.

Maybe I'm not getting what gregor is talking about? But this doesn't seem to be the 'myth' of energy breakthroughs.

What are the past 'breakthroughs' which have failed?

Also, pointing to Hydro as more popular than Nuclear doesn't prove energy breakthroughs are a myth. That is like saying that if wind power is 20% of energy production, that that would not be a breakthrough.</comment>


Facebook, Twitter penalize Trump for posts containing coronavirus misinformation - <AUTHOR> https://www.washingtonpost.com/technology/2020/08/05/trump-post-removed-facebook/ <comment><USER2> Let public institutions run their own ActivityPub installations. The Internet needs a return to the Commons[0] as its operating model.

[0] [https://en.wikipedia.org/wiki/Commons#Digital_commons](https://en.wikipedia.org/wiki/Commons#Digital_commons)</comment>


Quick guide to securing GRUB - <AUTHOR> http://linuxhive.blogspot.com/2011/09/linux-security-securing-grub.html

<comment><USER2> If someone has physical access to a computer, this isn't securing anything.

<comment><USER3> That's true in principle, but it requires the time, tools and privacy to open the case and remove the media. In practice the ability to caually boot an alternative OS (from a USB stick, say) is a hole worth plugging in a lot of cases. This can be done easily enough with a BIOS password, but the problem is that GRUB's default configuration defeats this by allowing the user direct control over booting. I don't think it's insane, though you're right that this can't produce a "secure" installation.

</comment></comment><comment> mike-cardwell I assumed this article was going to be about TrustedGRUB and full disk encryption: <https://projects.sirrix.com/trac/trustedgrub>

Personally, I use full disk encryption, but I keep the boot partition and boot loader on an external USB drive that never leaves my side. More details on my blog here: [https://grepular.com/Protecting_a_Laptop_from_Simple_and_Sop...](https://grepular.com/Protecting_a_Laptop_from_Simple_and_Sophisticated_Attacks)

</comment><comment><USER4> the guide fails to mention the uninstallation method, which consists of booting off of a USB pen drive and removing the line that was just added. passworded bios? insert the hard drive in another machine instead.

this also doubles as the method in which this "security" measure would be defeated.

</comment><comment><USER5> If someone has physical access, the only effective barrier is full-disk encryption.</comment>


How to frustrate developers and alienate teams - <AUTHOR> http://anythingsoftware.posterous.com/how-to-frustrate-developers-and-alienate-team

<comment><AUTHOR> What do you find are other Enterprise approaches to annihilate developers motivation?</comment>