Smalltalk with the GraalVM - <AUTHOR> https://www.javaadvent.com/2019/12/smalltalk-with-the-graalvm.html <comment><USER2> Just a clarification: when used as a JIT, Graal does not compile languages defined with the Truffle framework into Java bytecode. Rather it compiles _both_ Java bytecode and Truffle languages _directly_ into machine code (in this case, the Truffle language is Smalltalk bytecode), which it then installs in Hotspot's code cache. The diagram places the Graal compiler above Hotspot when it would be more appropriate to place it as a component inside of Hotspot, where it replaces the C2 compiler (Java bytecode to machine code), as well as directly compiles Truffle languages into machine code.

Graal can also be used as an AOT compiler ("GraalVM Native Image") -- from Java bytecode (only!) to a native executable that runs independently of Hotspot. If the Java program so compiled is itself a Truffle interpreter, the result is a native interpreter for the Truffle language, that contains an optimizing JIT (for the Truffle language only).

To make things even more interesting, when Graal is used as a Hotspot JIT, because Graal itself is written in Java, it must either compile itself (bootstrapped by Hotspot's Java bytecode interpreter) -- in which case it is both a Java component run _by_ Hotspot as well as a component _of_ Hotspot -- or it could be AOT-compiled into a native shared library, which is then loaded by Hotspot like any other shared library.

<comment><USER3> As of Graal 19.1 , libGraal, a pre-compiled C2 JIT compiler, is bundled with GraalVM.

You can use it by adding the following JAVA_OPTS:

-XX:+UseJVMCICompiler -XX:+UseJVMCINativeLibrary

<comment><USER4> > libGraal, a pre-compiled C2 JIT compiler, is bundled with GraalVM

libgraal isn't a C2 JIT compiler - it's (the clue is in the name here) a Graal compiler.

And the person you're replying to already mentioned it:

> or it could be AOT-compiled into a native shared library, which is then > loaded by Hotspot like any other shared library

</comment></comment></comment><comment><USER5> The embedded video showing a Smalltalk inspector being used to examine Python objects - that put a big smile on my face.

<comment><USER6> Happy to hear that! If you'd like to see some Smalltalk tools rendered in Java Swing, check out this demo [1]. More details on this are in the blog post on our Polyglot Programming seminar [2].

[1] [https://www.youtube.com/watch?v=If7xNBYA0Bk](https://www.youtube.com/watch?v=If7xNBYA0Bk) [2] [https://medium.com/graalvm/hpi-polyglot-programming- seminar-...](https://medium.com/graalvm/hpi-polyglot-programming- seminar-3fd06ffa59d2)

</comment></comment><comment><USER6> Hi everyone, I'm the author of the blog post. Feel free to let me know if you have any questions or suggestions!

<comment><USER7> That's interesting work, thank you very much. I would be very interested in the performance gain in using the GraalVM JIT compared to the original Squeek (Cog) or e.g. VisualWorks the performance of which is comparable to CPython ([https://benchmarksgame- team.pages.debian.net/benchmarksgame/...](https://benchmarksgame- team.pages.debian.net/benchmarksgame/which-programs-are-fastest.html)). I'm aware of another publication which concludes that the performance gain of a Truffle based solution is about the same as of an RPython based one. Did you also have a look at this? And finally: could'nt you improve performance even more by using a more optimized bytecode (instead of the bluebook one, as it was e.g. done here [http://strongtalk.org/downloads/bctable.pdf](http://strongtalk.org/downloads/bctable.pdf))?

<comment><USER6> We compared the runtime performance of GraalSqueak with OpenSmalltalkVM (formerly Cog) and RSqueak (RPython-based VM) in Figure 4 of our MPLR'19 paper [1] for the first time. Since then, we've worked on a couple of performance optimizations. So at the moment, I think GraalSqueak is only slower in the DeltaBlue benchmark... in all others, it's (often significantly) better than OpenSmalltalkVM. However, please also note its limitations which we discussed in section 5.2, especially with regard to Smalltalk's interrupt handler and Partial Evaluation performed by the Graal compiler.

So far, I'd say our observations wrt RPython match the ones discussed in "Tracing vs. Partial Evaluation" [2]: Language implementers have to do more work in Truffle, but probably get better peak performance in return (not talking about warmup or memory consumption here).

RE "a more optimized bytecode" set: Sista [3] (an extension of the OpenSmalltalkVM) is doing something like that, too. I'd guess performance would be more or less the same using GraalVM as Truffle produces highly specialized code. But, of course, this would need to be benchmarked. The advantage of the Sista approach is that it's managed on the image level, so specialized versions of methods are persisted as part of the image. AFAIK the GraalVM team is working toward persisting compiled code caches, which is kind of similar but on the level of the language implementation framework.

Hope this answers your questions!

[1] [https://fniephaus.com/2019/mplr19-graalsqueak.pdf](https://fniephaus.com/2019/mplr19-graalsqueak.pdf) [2] [https://stefan-marr.de/papers/oopsla-marr-ducasse-meta- traci...](https://stefan-marr.de/papers/oopsla-marr-ducasse-meta-tracing-vs- partial-evaluation/) [3] [https://hal.inria.fr/hal-01596321/document](https://hal.inria.fr/hal-01596321/document)

<comment><USER7> Thank you for your detailed, interesting answer. I look forward to reading the referenced papers. At the moment I am building frontends for LuaJIT and would like to compare performance with analog implementations in RPython and Truffle. Maybe I will build a Smalltalk-80 frontend and then compare it to your mentioned implementations.

</comment></comment></comment></comment><comment><USER8> Is Graal finally there? Years ago there was a lot of promise that it would be THE "one true VM" that allowed python and ruby to fly. But I don't really hear much about it on those fronts. Where are we at?

<comment><USER9> Twitter is using it, they are seeing gains of 10% for Scala.

It is a big project, there are many runtimes it supports, it already seems production ready.</comment></comment>


It's great to see mobile inventors and startups mentioned during SB. - <AUTHOR> http://www.youtube.com/watch?feature=player_embedded&v=Yr7ePz-xsDQ#!

<comment><USER2> I agree. I was really happy when I saw this commercial. I thought it was very well done.</comment>


A vesting idea - <AUTHOR> http://abstractnonsense.com/vesting-idea.html

<comment><USER2> Employees want to balance options vs. salary vs. time. They need fixed numbers to calculate this. With your approach, they get penalized if your company takes too long to sell/go public. If I have a four year vesting schedule, I know that if I commit four years to your company, I'll be fully vested. But if I bust my ass for four years then it takes you another four to have some sort of liquidity event, your company has actually put less value on my initial four years (in fact, reduced it by 50%). That won't fly with most people. I think that's why fixed vesting schedules work best, and issuing new options to retain employees after they're fully vested makes the most sense.

<comment><AUTHOR> _With your approach, they get penalized if your company takes too long to sell/go public._

Sure, it aligns everyone's incentives with getting the company to an exit (not necessarily as _quickly_ as possible, but if it's going to take a long time, everyone should have the incentive to make it a _big_ exit). Is that a bad thing?

<comment><USER2> Put a value on the options, then ask yourself the same question: I'll give you $200,000 to work for me for four years. But if we don't go public for eight years, I'll give you $200,000 to work for me for eight years. Doesn't make much sense to me.

</comment></comment></comment><comment><USER3> If an employee leaves prior to a liquidity event they have to exercise their vested options, which involves spending their own money. The employee who stays on does not have to take any such financial risk. I don't know what problem you are really trying to solve. You mention employee retention at the end, but the rest of the piece makes it sound like you're really trying to eliminate some sort of hypothetical sour grapes. I don't think the latter is really worth solving, and the former has proven to be mostly unsolvable.

</comment><comment><USER4> The biggest problem with this that I can see is logistical. You're trying to define how many shares of stock an employee earns for a month of work now by something that may happen in the future.

How many shares of stock do you issue when an employee decides to exercise his options four years in, and will a court uphold you trying to rescind a third of his stock when you exit in another two?

<comment><AUTHOR> _...will a court uphold you trying to rescind a third of his stock when you exit in another two?_

That sounds pretty much like reverse-vesting, which is a fairly common practice (my Justin.TV stock has reverse-vesting). You transfer ownership of 100% _immediately_ , but the company has the right to buy back unvested options for a very low nominal price.

</comment></comment><comment><USER5> What's the mechanism that would allow a company to attract highly qualified late-comers via equity- even in the 23rd hour in order to help make the exit happen- without upsetting the fairness? (not saying this is a flaw- just would rather you spell it out since you're a math genius) (seriously, he's a math genius- I saw his CV).

<comment><AUTHOR> Late-comers would, like everyone else who stuck around until the exit, vest 100% on exit (ignoring things like cliffs for now). This might seem a little unfair given they didn't put in much time, but of course you get to play with the size of the option grant, and make it big or small depending on how highly qualified they are and how much they're really adding to the exit.</comment></comment>


Ask HN: Any mainstream messenger that is reliable and treats us as adults? - <AUTHOR> This would deserve a long rant, because this has been bothering me for quite some time, but now I just want to ask for recommendations, as Facebook Messenger just stopped delivering messages in one of my conversations.
Is there any among the popular instant messenger platforms that is:
1. reliable, that is I can trust it to deliver messages (I can't believe I have to start with this one),
2. has a _permanent_ log of all messages, photos, and files sent, i. e. it does not allow others to delete either their or my messages, and does not allow to send messages that automatically disappear after some time, and allows me to transfer these logs to my desktop in a non-proprietary format,
3. and does not share things with others I don't expect it to share, like my location, if I made a screenshot, etc. (online status and read receipts I have basically given up on).
Thanks an advance. <comment><USER2> Nextcloud Talk fufulls all of those requirements except the unspoken one, your friends don't use it.

</comment><comment><USER3> Is this a small, closed group? If so, you could always just run your using, e.g., XMPP.

</comment><comment><USER4> If you and your contacts remain within the Apple ecosystem, iMessage?

A private IRC server?

<comment><AUTHOR> Yeah, sorry, I should have mentioned that at least one of us uses Android, and at least one of us is non-technical.

<comment><USER4> If one of you can setup an IRC server, the non-technical people could use Android IRC clients.</comment></comment></comment>


Lifelock Dinged $12 Million for Deceptive Business Practices - <AUTHOR> http://www.wired.com/threatlevel/2010/03/lifelock-accused-of-running-con-operation/ <comment><USER2> I think they need to do more. They need to put the CEO in jail and set an example.</comment>


Hackers Take $1 Billion a Year as Banks Blame Their Clients - <AUTHOR> http://www.businessweek.com/news/2011-08-04/hackers-take-1-billion-a-year-as-banks-blame-their-clients.html

<comment><USER2> I wonder if using security tokens (hardware, not software) would diminish most of these problems? Frankly I'm surprised that big banks do not make this type of stuff mandatory. Making it part of the credit card/debit card would make it very convenient since you always carry it with you. Still, you still need several other layers of protection since even tokens can be hacked.

<comment><USER3> Many banks in the UK do require the use of a card reader or a device that generates one time passcodes in order to use online banking. Ironically, a lot of people complain about the inconvenience of having to use them. I wonder if banks have greater liability in the case of fraud than elsewhere.</comment></comment>


What Is the Perfect Age? - <AUTHOR> https://www.wsj.com/articles/what-is-the-perfect-age-1515844860 <comment><AUTHOR> Summary:

* Getting Married: 28-32

* Having Children: before 32

* Making financial decisions: peak around 50

* Getting a cell phone: 12

* Mastering Vocabulary: late 60s, early 70s

* Processing Information: 18-19

* Bodybuilding: 25</comment>


Michio Kaku On Aliens in Physics - <AUTHOR> http://www.youtube.com/watch?v=Kw8dcb8iKSM

<comment><USER2> Michio should totally be invited to speak at TED one day.</comment>


The Sad Truth About Developing Executives - <AUTHOR> http://recode.net/2015/03/11/the-sad-truth-about-developing-executives/ <comment><USER2> "You should be extremely clear up front that you expect your executives to be world-class in their functions. If they are not, they will not keep their jobs. Furthermore, you will not be able to make them world-class, because you are not world-class in their areas."

I see two big problems with this statement:

1\. It falls into the "everyone must be extraordinarily excellent" trap. The average employee is... average. Odds are your hiring practices are average too. It is better to focus on getting people's best than it is to focus on having the best people, because very few companies actually do have the best people. If you think your company is different, you had better have a compelling reason.

2\. Even for good employees, it takes time for them to adapt to your company and perform at their best. Obviously you need to let some people go, but if you hold a noose over their heads from day one they're just going to worry about looking good for long enough to collect their options/bonuses/etc.. Looking good in the short-term and doing good in the long-term are often incompatible goals.

<comment><USER3> 1\. Nah, I think he's right. You're right in that most start-ups will never run into the issues that he's talking about, because most will fail, but if you need to take sales national or international then your VP of Sales better be either a domain leader or know a helluvalot more than you. Either way, you have to trust executives at a level that you never have to for average employees.

2\. I didn't see him say anywhere that performance has to be measured short- term. Having a noose over your head based on long term results is very possible. Of course you evaluate your executives on their last major completed project/action, it may have taken 6-18 months (or longer) for it to come to fruition, but that doesn't mean a noose isn't over their heads.

<comment><USER4> Your VP of Sales will know a helluva lot more than you do if they're _remotely competent_ at their job though, which is not by any stretch of the imagination equivalent to being "world class". Any decent VP of Sales will also be highly adept at shifting blame if you make it clear the knife is hanging over their head from the start...

Even in sales, which has an unusually straightforward success metric, beyond a certain threshold of above-average competency the leadership is more about how well their approach gels with the most suitable approach for your service, and how flexible they are in their approaches than whether they're some mythical 10x unicorn. Someone who is "world class" at scaling inside sales teams is not going to be "world class" at figuring out how to get your small team of domain experts to network their way to niche domination... if anything applying lessons learned from their experience might make things worse. And I'm not sure what even makes a Head of HR "world class", but I'd certainly prefer a shared philosophy than a stellar set of resume accomplishments.

Anyone involved in a sufficiently large organization who thinks all their senior executives are "world class" or necessary to eliminate is clearly the weak link on the team, especially when it comes to judging others' abilities.

</comment></comment></comment><comment><USER5> When you're hired as an executive, the state of affairs is either glorious or shit.

If its glorious, its because the previous executive left. You in this case have the excellent opportunity of not screwing it up. Good luck, but it'll be while before anyone figures out that you're an imposter. Typically, your team will know well ahead of the CEO. By the time the CEO knows, its too late to mentor you. The damage is done.

If the state of affairs is terrible when you join, as a semi reasonable executive, you should be able to identify the most basic things that are effed up, and show improvement within 90 days. If you're unable to improve things right away, when they are screwed up -- sorry, you don't have what it takes. No amount of mentorship will address this.

<comment><USER6> Wisest words I ever got early in my career from a boss who spent a couple of decades in senior management at a variety of big and small tech companies was if you're hired as an executive you immediately do three things. 1) Get in early, leave late, and read everything about the group you're running. 2) Get to know your people and understand the problems you're dealing with. 3) Change nothing immediately. Waltzing in and changing things willy nilly is a recipe for disaster. I'd counter and say within 90 days you should have a handle on the group you're running, what's going really well, what's going poorly, and identify plan(s) to address major areas that need addressing. It shows you actually understand and aren't simply kicking the apple cart for the sake of making an impression.

<comment><USER5> Fair point. When I say 90 days, I think if things are bad, it's typically easy to spot where the degenerate behaviors are starting, and correcting them. In 90 days, the leading indicators need to start looking good. It takes time for that to flow through the system.

</comment></comment></comment><comment><USER7> This article is foolishly binary. People are either world-class or are poor performers.

Your people are at least nominally competent. They got you to this point, after all.

So, all of his points about people already inside the organization are much more easily summarized as "If someone inside your organization is performing poorly, you don't have the time to do anything but fire them." I probably agree with this not because I think that your startup magically needs to move so fast, but because most managers are far too unwilling to fire people that desperately need to be fired.

As for an external executive hire, the whole point of pulling them in is to add a needed skillset to the mix. If they don't actually have the skill you needed, _why did you hire them in the first place_.

As for long term, this article falls into the trap of assuming that management is somehow an inherent talent. It is not--it is a learned behavior. This is a huge problem in business since people who believe that managerial skill is inherent _never strive to measure or improve their skill_.

<comment><USER8> Did you read the same article I did? The point was not that people are binary, but that success in executive positions is more binary than it is in other positions, because of the weight of early impressions on respect, the weight of respect on job performance, and the high impact of executives on the organization. You can hire an incompetent fry cook, engineer, or salesperson and train them to do their job (within reason).

<comment><USER7> There are _TWO_ classes of executives. The first class are the people who are already at your company. The second class are the people who are brought in from outside.

While the advice in this article _might_ hold for the parachuters from outside, it most definitely does _NOT_ hold for those already at your company. Following this advice is a good way to paralyze a functioning company.

</comment></comment></comment><comment><USER9> Unfortunately, especially in a startup, there aren't many friendly ways of saying "Hey, CEO, I think you're sucking at leading and sales. What gives?"

Especially if you're an early employee and not in the elevated founder class.

<comment><USER10> Sure there is. You go talk to the CEO and say "I think you're sucking at leading and sales. And I think that because of reasons X, Y & Z."

They might not listen to you but you can certainly tell them.

<comment><USER11> Better is "Why aren't we doing X, Y, and Z to improve sales?" That phrases it in a positive tone, with concrete solutions, and gives the CEO an opportunity to tactfully tell you why your model of the world may be wrong.

Beware that very often the response is "Well, I never considered that, but it sounds like a good idea. Why don't you lead a project to do X, Y, and Z and we'll see how it turns out? Oh, and be sure to get your regular work done too."

<comment><USER12> Better still...

 _Remember that idea you suggested last week in the pub of doing X Y and Z. Well, we started doing it on the side and it is increasing sales. Should we start doing it officially?_

</comment></comment></comment></comment><comment><USER13> I think it's also missing the obvious, "they don't know what they are doing when they are playing in other orgs". It's sort of implied that helping someone is something the CEO doesn't have time for, but it's a little unclear that they might not need the help, and their job is to just coordinate, make sure to hire the right execs, and remove friction (+ raise funds).

Some of the best advice I ever got (not for exec things) was "just be sure everybody thinks you're helping, no matter what they do".

</comment><comment> UK-AL Problem is that the skillset to be CEO, and to be employee are different. The employee probably knows more about that area than a CEO, that's why you hired him.

Which why its so difficult to get on the path to be a ceo. The only way to really learn to be a CEO, is to be a CEO. And to get that chance you have to take risks, like founding.

<comment><USER14> Totally agree.

When I founded my software company 9 years ago I was 23 and to say I was wet behind the ears is an understatement. I didn't have the faintest idea about leaders versus managers, strategy, operations, procedure, policy, management of staff, performance management...the list goes on. I thought that these were all just bullshit words that people used to cover up the fact that they were sit at their jobs.

Nearly 10 years of trial and error and I'm now capable of operating as a CEO at board level. My management team are crazy good at what they do, so I'd like to think they wouldn't have stuck around if I wasn't any good!

What I'm bad at is ops and managing people but that's fine. I've learned the hard way that this isn't my forte and hired somebody better than me at that to do that job. Hiring better people than you is an old adage but so true.

There is a downside to being a founder and CEO. It makes you more or less unemployable in a typical employer/employee relationship.

</comment></comment><comment><USER15> Andreessen Horowitz has stated they like to develop founders into CEOs, rather than replace them with a professional CEO. If a founder CEO needs development, is no leniency for another exec to develop? What about co-founder non-CEO execs? Does this apply to them as well?

<comment><USER16> CEOs brought in from the outside are free agents. Founder CEOs (especially first-time founder CEOs) are draft picks. You don't bring in a free agent in order to develop them, unless they're a reclamation project, you were able to get them cheap, and you have a hole in your team that you really can't fill a better way. Rather, you bring in the free agent to elevate your team immediately and give you a shot at a championship trophy.

</comment></comment><comment><USER17> There are fast track executive development programs in Oil and Gas. But, the point is to develop a person before they become an executive. That said the mental shift from building to executing a company is difficult.

</comment><comment><USER18> What about the mantra: "surround yourself by people smarter than you". Where is the source of incompetence, is it actually lack of intellectual brainpower or is it contextual?

</comment><comment><USER19> All of these things are true if your expectation of the future has zero value.

On the other hand, if you think that there is any future then non of these things is true.

<comment><USER11> His point is that while you're waiting for the future, all of the people who report up to that executive have lost confidence in him. That confidence is impossible to regain. In the process, you will lose your best individual contributors and your best first-level managers.

Think of it from the perspective of a talented, savvy engineer at the company. If your CEO hires a bozo to manage engineering, do you stick around? Why should you? You are very good at what you do; you have plenty of options elsewhere, friends at other companies that are continually asking "Why don't you come work for Floogle?", and recruiters from Flare that are battering down your LinkedIn account. You're already aware that your VP makes a lot more money than you do; if it's clear that you are way more competent than he is, why should you stay?

Ben's guiding philosophy of management is "Always view all of your decisions from the perspective of everyone in the company." Trying to develop an executive for future potential may be what the CEO wants, it certainly is what the executive wants - but it's not fair to the individual contributors who work under that executive.

<comment><USER20> Why is it that binary, though? Surely somewhere between "incompetent" and "world-class" there's space for execs who are "good enough to earn their reports' respect but with room to grow in a few areas"?

<comment><USER11> It's not binary, from an objective perspective. The thing is, if you even _think_ that his advice might apply to your situation, _the exec in question has lost your respect_. That means that they lost their reports' respect several months ago (the CEO is always the last to know), and you have a major problem on your hands.

<comment><USER20> I don't know about that. It'd be really easy for a credulous person to read that article and think "oh, some of my execs aren't world class yet. Guess I'd better replace them."

Yeah, once you've lost the respect of your reports (or failed to ever gain it) you can't do your job as a manager or executive, period. But that doesn't mean that great execs are born rather than made or that nobody should put any effort into developing a great manager into a new exec or a new exec into a great one, which the article seems to fallaciously suggest.

</comment></comment></comment></comment></comment><comment><USER21> So much sympathy here for the poor mid level executive. I don't think it's unreasonable to have unyielding expectations of the people you're presumably compensating an order of magnitude above the rank and file. They'd best be world class at _something_ , otherwise how the hell have they made it to the C-suite?

</comment><comment><USER22> He thinks the right equity stake for a great engineer is 0.2%. Huh.

<comment><USER23> That number is anywhere from laughable to totally reasonable to overly generous, depending on several things including size of the company.

If you're giving employee #1 0.2%, maybe you should be hiring a contractor or something.

If you're Google, you're not going to give an engineer 0.2% even if he's The Best One.

</comment></comment><comment><USER24> "In the end, a CEO has got to know her limitations."

I love how he switches between gendered pronouns in this article, and ends with a female one.

<comment><USER25> Really, a complaint about somebody going through the effort of avoiding these complaints?

<comment><USER26> I don't think they were being tongue-in-cheek.

</comment></comment></comment><comment><USER27> This is the "I don't know how to do it, so no one does" fallacy. Total bullshit.

See, I'm pretty confident that, in a focused year of mentoring, I could turn anyone with strong general intelligence (say, IQ over 125) into a good programmer. If I can train someone into a hard job, then it can't be that difficult to train someone into a much easier job.

 _You should be extremely clear up front that you expect your executives to be world-class in their functions. If they are not, they will not keep their jobs._

Oh, this is just self-congratulatory claptrap. I don't consider myself a "world-class" programmer. I'm good, but it's not like I'm not one of the 20 best out there. And I'm far more "world-class" than 99 percent of tech executives.</comment>


Living Computers Museum Closing - <AUTHOR> https://www.livingcomputers.org/Closure.aspx <comment><AUTHOR> One of my favourite museums may be closing indefinitely.

The museum was operating online-only for a while, but Vulcan (formerly Paul Allen's) is beginning to close their art and entertainment division, which makes it seem unlikely to reopen: [https://www.seattletimes.com/entertainment/vulcan-to- close-i...](https://www.seattletimes.com/entertainment/vulcan-to-close-its- arts-entertainment-division-which-includes-cinerama-and-seattle-art-fair/)</comment>


Allison Goes to AFI: Crowdfunded "Scholarships"? - <AUTHOR> http://www.indiegogo.com/allisongradschool

<comment><AUTHOR> I find the idea intriguing. Is there a market for crowd-funding scholarships - rather than let committees decide who to give a scholarship to, leave it to the people? Maybe even spin it as an investment in their career, with some sort of return or payback to the original investors?</comment>


So, "Are Design Patterns Missing Language Features"? - <AUTHOR> http://programmers.stackexchange.com/questions/165568/so-are-design-patterns-missing-language-features

<comment><USER2> If, in any given language, you need to write out a prose recipe or code template for how a design pattern is _implemented_ in that language, then that's an indication of a limitation in the expressive power of the language. If you can implement the pattern generally (not just a specific, limited form of it) in a library/package etc. and just _use_ the implementation from consumer code, then you aren't running into a language limitation.

This doesn't mean that the _pattern_ itself, even in that case, is a missing language feature: while in some cases things that can be patterns in one language may be basic independent language features in another -- e.g., "classes" or might be recipe-driven "design patterns" in C but basic language features in Java -- they are just as much not a sign of a language expressiveness limit if you can implement them as library code in a general form, even when they aren't basic language features (e.g., "classes" in JavaScript.)

And, even when language _can_ express them in library code, that there is a value to doing so may not be clear until the patterns have been catalogged.

The basic upshot isn't that design patterns are missing language features so much as that the design patterns you need a cookbook rather than a library for are a function of language features (you still -- whether in cookbook or recipe form -- benefit from understanding the pattern, motivating uses, considerations that apply to using the pattern, etc.; the difference in whether you are going to need to code the specific use yourself or be able to grab library code and call it with appropriate arguments when you need to use it.)</comment>


Python web scraping resource - <AUTHOR> http://jakeaustwick.me/python-web-scraping-resource/?mc_list=python&utm_source=hackernewsletter&utm_medium=email&utm_term=fav

<comment><USER2> Discussion from when this was posted four days ago:

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

<comment><USER3> Yeah, the article was submitted with additional parameters on the URL.

[http://jakeaustwick.me/python-web-scraping- resource/?mc_list...](http://jakeaustwick.me/python-web-scraping- resource/?mc_list=python&utm_source=hackernewsletter&utm_medium=email&utm_term=fav)

[http://jakeaustwick.me/python-web-scraping- resource/?mc_list...](http://jakeaustwick.me/python-web-scraping- resource/?mc_list=python)</comment></comment>


Visualizing Networks with Hive Plots - <AUTHOR> http://bost.ocks.org/mike/hive/ <comment><USER2> Mike Bostock's D3-based Hive Plot demo is an excellent showcase for D3, Hive Plots, and their excellent synergy. D3's detailed graphics and highly interactive feedback make hive plots "come to life", showing off their defined and predictable diagram layout, as well as their high data density.

For a summary of the effort's background and prospects, see my status report ([http://groups.google.com/group/d3-js/browse_thread/thread/ba...](http://groups.google.com/group/d3-js/browse_thread/thread/baa778c9e370a32b)).

</comment><comment><USER3> d3.js is ideal for custom visualizations like Martin Krzywinski's. Another neat one is the chord diagram, based on Circos.

<http://mbostock.github.com/d3/ex/chord.html>

<http://circos.ca/>

It's also straightforward to transition between datasets and layouts:

<http://exposedata.com/tutorial/chord/latest.html></comment>


Meet Steven, the context-aware, lifelogging emoji app - <AUTHOR> http://blog.steventheapp.com/

<comment><USER2> I'm one of the developers. Would love to hear people's feedback. We're trying to create an automatic but fun way to stay connected, and building some interesting contextual awareness along the way, e.g. [https://steventheapp.com/e/Q1fJnL/subway](https://steventheapp.com/e/Q1fJnL/subway)

<comment><USER3> Why emoji and not arbitrary icons?

<comment><USER4> If they were using their own icon set I'd probably be asking the same question in reverse.

Emojis are becoming a very well known icon set among loads of different people, and I think it's smart when people capitalise on that to enable new things.

</comment></comment></comment><comment><USER5> As a guy named Steven that used to be working on a context-aware life logger and now has an emoji app side project, this post made my day.

<comment><USER6> amazing. so happy we could make your day!

</comment></comment><comment><USER7> I hate being 'that' guy, but any chance of an android version?

<comment><USER8> We would love to be on Android. We focused on iOS first because we've been exploring the space over the past two years with new products every few months to find something that sticks. This is the first app we've launched, and you can bet that we will bring it to Android as soon as we have the resources!

<comment><USER9> That's a reasonable response. I've got another vote for android, but I'll hold onto it and be jealous of my iphone friends. They seem to be enjoying it.

</comment></comment></comment><comment><USER10> How long until it hits the Canadian store?</comment>


Creating the innocent killer - <AUTHOR> http://www4.ncsu.edu/~tenshi/Killer_000.htm www4.ncsu.edu/~tenshi/Killer_000.htm <comment><USER2> clickable, [http://www4.ncsu.edu/~tenshi/Killer_000.htm](http://www4.ncsu.edu/~tenshi/Killer_000.htm)

<comment><AUTHOR> oh man how the hell did i mess that up

<comment><USER3> We've fixed it for you. Actually our software would normally have fixed it for you, but www4.ncsu.edu/~tenshi/Killer_000.htm as a URL confused it. Maybe it was the "www4".</comment></comment></comment>


First attempt at pushing the limits of Excel's visual design features - <AUTHOR> https://exceldashboardtemplate.com/ <comment><AUTHOR> I'm not 100% sure if this is a good match for Hacker News but thought somebody here might appreciate it.

Obviously I don't encourage the use of Excel for most data analytics projects, but I get so many client requests for Excel dashboards that I thought I should just make a standalone toolkit I could send to them. It's basically just a big 35mb+ Excel file with a ton of copy-pasteable charts/elements, color palettes, tips/tricks and other goodies. There's enough there for most use cases and it's easy enough for anyone with basic Excel skills to use.

Feedback has been a funny mix of "holy moly is that really Excel, I want it!" and "this is too pretty and not practical".

I've seen enough 90s style, clip-art packed, badly-laid-out Excel workbooks that I think there's room for something a bit more visually engaging especially if it adheres to the basic principles of data visualization.</comment>


I created a file host. Almost like imgur, but for any kind of file. Thoughts? - <AUTHOR> https://infotomb.com

<comment><AUTHOR> Some of the things it does:

* extract text and metadata from images: [https://infotomb.com/opihx](https://infotomb.com/opihx)

* lets you access it how you'd like by changing the file extension: [https://infotomb.com/opihx.txt](https://infotomb.com/opihx.txt), [https://infotomb.com/opihx.png](https://infotomb.com/opihx.png)

* make PDFs suck less: [https://infotomb.com/vvs7t](https://infotomb.com/vvs7t)

* protects your privacy and anonymity: [https://infotomb.com/about/anon.html](https://infotomb.com/about/anon.html)</comment>


Fira Code: monospaced font with programming ligatures - <AUTHOR> https://github.com/tonsky/FiraCode <comment><USER2> As a developer, I have spent years writing and learning to parse the meaning of sequences like ==, ===, <=, ~=, and so on. For nearly all of us, the ligatures in this font are completely new. I think it's a creative and interesting idea, but it means re-training my brain to recognize them, which would take time.

And even if I could get my preferred editors to work with it, I would see the traditional symbols when reading code on the web, or pairing with another developer who does not use the font. It seems like a barrier to understanding, something that by nature developers strive to eliminate.

I'm torn. This idea could be something that changes how we all express code symbolically, or it will just become a fad that a tiny percentage of developers will insist on using, to the frustration of everyone else.

<comment><USER3> Let's be realistic. You don't have learn or retrain your brain to understand Fira Code. Symbols are all the same, they just look better.

<comment><USER4> The difference between e.g. -> and --> is a length of a small solid line. To me that's equates to a huge drop in readability, countering the easy to brain- parse argument.

<comment><USER3> Agree, but no language uses both -> and -->

</comment></comment></comment></comment><comment><USER5> that looks amazing, but I kinda wish that certain ligatures were optional (which they might be, need to look at the CSS docs again for atom)

I (personally) don't exactly want == to look too similar to a single =, after all!

<comment><USER6> They don't. The == variant is has double the width.

<comment><USER5> I am aware, I still find them too similar for my likings

<comment><USER3> Have you tried the font? = and == has 3× difference in width, it's hard to mistake one for another. I'm using Fira Code for a year now, never had mixed them up

</comment></comment></comment></comment><comment><USER7> "Your eye spends non-zero amount of energy to scan, parse and join multiple characters into a single logical one."

citation needed

<comment><USER8> The brain is very good at turning complicated features in to abstract concepts. In fact that is mostly what some parts do. So, not clear if this actually improves things or not.

For example, the == and === look quite a bit similar in the font. You have to compare relative sizes, whereas with the normal fonts you can count the spaces.

The rest of the ligatures look pretty cool!

<comment><USER3> You probably mean = and ==. They have 3× difference in width, which, in practice (I'm using Fira Code for a year now), is more than enough to tell the difference.

Regarding the difference between == and ===, latter has three lines (and so does !==), so in fact in Fira Code === and !== the looks implies the meaning, whether in other cases you have to bend your mind to accept that negation of "three equals" is a "two equals and a bang"

</comment></comment></comment><comment><USER9> I'm not sure why this has to be done in the font. Vim has support for conceal characters, which can "conceal" syntactic constructs into other characters, i.e., any Unicode code point. This works out pretty well in LaTeX documents for example, because you can see the mathematical symbols. [1]

One gripe I have though is that columns become misaligned when you have concealed characters or ligatures. In the source, \alpha is 6 columns and \beta is 5. Displayed, α and β are both 1 column. This messes up things like visual block insert mode, because the location of that column in the source and what's being displayed might differ. Should you line up the displayed version and make it look nice for you and those with the same plugin, or don't you?

[1]: [https://github.com/vim-pandoc/vim-pandoc](https://github.com/vim- pandoc/vim-pandoc)

</comment><comment><AUTHOR> I have been using Fira Code font with Atom for some time and I am absolutely in love with the aesthetics. All credit and praise goes to [http://tonsky.me/](http://tonsky.me/)

<comment><USER3>

</comment></comment><comment><USER10> = vs == vs === seems like a sure way to have bugs.

<comment><USER11> My thoughts exactly. Probably depends on the person but I am certainly the type who would have trouble detecting the difference.

<comment><USER3> Just give it a try. There's 3× difference in width, so _in practice_ you won't mistake them, ever. I'm using that font for a year now, not a single case of misreading

</comment></comment></comment><comment><USER12> After so many years, there's still no better coding font than MS Consolas. I use it everywhere (where by "everywhere" I mean Linux and OSX, since I don't use any MS products other than this font).

<comment><USER13> Do you not like Inconsolata?

[https://www.google.com/fonts/specimen/Inconsolata](https://www.google.com/fonts/specimen/Inconsolata)

<comment><USER12> When it comes to my eyesight, why settle for anything but the best? Consolas is free as in beer to use. I just checked it into my dotfiles which I clone to all my machines.

<comment><USER3> I would rather put it "free as in torrents". Microsoft [https://www.microsoft.com/typography/fonts/family.aspx?FID=3...](https://www.microsoft.com/typography/fonts/family.aspx?FID=300) offers to buy it for €129

<comment><USER12> Maybe that's what it is now, but there was a window of time when Microsoft offered it as a free download off MSDN to anyone who wants it. That's when I got my copy.

</comment></comment></comment></comment></comment><comment><USER14> This is really cool, but I must be getting old, because I find it particularly difficult to parse.

</comment><comment><USER15> My vision is not 100% and when I code for a few hours my eyes get tired and it gets even worse. Fira Code helps! Thank you, tonsky <3

<comment><USER3> So happy to hear that!

</comment></comment><comment><USER16> I feel that if you hide the text you need to type to insert a symbol, learning a new language might be hard.

For instance, some languages use != and others use ~=. If both of those look the same, you're going to have one hell of a time learning a language.

</comment><comment><USER17> I'm trying out Atom, and ligatures in Erlang don't always render. For example, -> in the head of a function clause doesn't render as a ligature, while inside the function body it does.

EDIT: In developer mode I can see the -> is being rendered as two single character <span>s when in the head of the function. The solution is probably to fix it in the grammar definition: [https://github.com/jonathanmarvens/atom- language-erlang/blob...](https://github.com/jonathanmarvens/atom-language- erlang/blob/master/grammars/erlang.cson)

<comment><USER18> I found the same thing, in Ruby -> was split up, while in Swift it was fine.

</comment></comment><comment><USER19> So, neither Emacs, nor vim (and none of it's gui variations) are supported.

<comment><USER18> I'm finding it works fine in OS X's Terminal.app and (by extension) emacs and vim (El Capitan 10.11).

<comment><USER19> Good news.

What about standalone (not terminal-based) Emacs on OSX?

<comment><USER3> You can try this [https://github.com/tonsky/FiraCode/wiki/Setting-up- Emacs](https://github.com/tonsky/FiraCode/wiki/Setting-up-Emacs)

</comment></comment></comment></comment><comment><USER20> I tried using ligatured when Pragmata added them, but the issues made me return to the normal version.

If you use your editor for multiple languages and documentation as well, you may find things like lines in comment blocks made of '%', '#', or '-' to break from the ligatures. Also if your doc markup(-down) uses underlines of '-' or '=' for headings, they are affected.

On Windows, I found some editors where the ligatures were enabled, some where they weren't, and not many where you had any option to toggle either way.

</comment><comment><USER21> Really cool, but what, if any, are the plans to get it working with Vim? It's the universal editor you're likely to find everywhere.

<comment><USER22> Vim isn't there problem, it's your terminal. There is an open feature request with iterm2, but terminal.app is probably a lost cause. I know nothing about the state of Unicode font rendering in Linux.

<comment><USER23> It works fine under konsole 15.08.

<comment><USER24> Konsole is the only terminal emulator I could get it working with, which is annoying because I much prefer rxvt. Konsole does weird stuff with my terminal colors in tmux, so I ended up not being able to use this nice font when I tried it previously.

<comment><USER25> Have you tried urxvt, by any chance?

<comment><USER26> Tried to get it at least readable for 15 mins or so and gave up: [http://paste.click/msFBVy](http://paste.click/msFBVy)

Tried all kinds of variations of

        > fnt="xft:Fira code:pixelsize=10:size=15"; urxvt -fn "$fnt" -fb "$fnt" -fi "$fnt" -fbi "$fnt" -letsp -1

Can't get the font spacing to not be massive and the ligatures don't work.

My build is:

        rxvt-unicode (urxvt) v9.21 - released: 2014-12-31
        options: perl,xft,styles,combining,blink,iso14755,unicode3,encodings=eu+vn+jp+jp-ext+kr+zh+zh-ext,fade,transparent,tint,pixbuf,XIM,frills,selectionscrolling,wheel,slipwheel,smart-resize,cursorBlink,pointerBlank,scrollbars=plain+rxvt+NeXT+xterm

Edit: Tried hasklig that was mentioned. Ligatures still don't work but the spacing is fine: [http://paste.click/cEWQZs](http://paste.click/cEWQZs)

</comment></comment></comment></comment></comment></comment><comment><USER27> I love the ligatures (arrows and fat arrows in particular), but the @ sign is so jarringly strange. It distracts me every time

</comment><comment><USER28> Probably not possible with ligatures/glyph variants but really cool would be grouping of numbers: In groups of three the first digit would be moved to the right and the last one to the left to simulate a narrow space as thousands separator.

<comment><USER29> I suspect that it's possible, but would require an impractical number (1000) of ligatures in the font.

<comment><USER30> I wander if it would correctly draw:

      1 000 000

and not do:

      100 000 0

assuming its parsed left to right?

</comment></comment></comment><comment><USER31> Probably a silly question, but can't we just generate ttf files from this so that you can use it in any windows editor?

<comment><USER3> Are there any problems with installing otf on windows? I installed and used them just fine

<comment><USER31> See I knew it was a silly question :) A few minutes ago I converted the otf files to ttf using font forge. That appeared to work, but it seems the ligatures are gone. On top of that the ttf version of the font did not show up as a monospaced font in my code editor. I might have done something wrong though as I only dabble a bit with font forge.

Then I just did what you suggested, install the otf instead (d'oh) Now the fonts do show up as monospaced font. But my editor does not display the ligatures. But at least it is usable.

<comment><USER3> What editor do you use? Is it listed as supported here? [https://github.com/tonsky/FiraCode#editor- support](https://github.com/tonsky/FiraCode#editor-support)

<comment><USER31> No, it is an editor called "the hammer" [1]. As it is I am one of the developers of that editor. It is rather specialized and targets the programming language DataFlex. The editing component is based on the codemax component. While I have access to all the code, I'm not sure on how-to add ligatures support.

[1] [http://vdf-guidance.com/The_Hammer.asp?Page=THEHAMMER](http://vdf- guidance.com/The_Hammer.asp?Page=THEHAMMER)

</comment></comment></comment></comment></comment><comment><USER32> What software is typically used to create a font like this? Are there any good open source options?

<comment><USER3> Glyphs.app provided a free license for Fira Code since font is open-source. I'm using it because original Fira Mono is developed in it as well.

Monoid uses FontForge (free)

</comment></comment><comment><USER33> On what planet does it make sense to release a programming font which explicitly refuses to support both vim and emacs?

<comment><USER34> Vim and emacs are terminal applications, thus it's down to the terminal emulator to support the font. Some terminal emulators do (eg Konsole). However many do not.

Frankly, I'm amazed at the number of programmers who have made the complaint about vim and emacs support since writing terminal applications (ie stuff that prints to STDOUT) is basically programming 101. It should be pretty obvious to any programmer where the support is required.

<comment><USER35> Emacs is a graphical application to me. That's the default behaviour, how I use it, and what I see people doing things like screencasts use.

<comment><USER34> That's not emacs then, it's a Cocoa / Win32 / whatever port of emacs. Unless your talking about "graphical" in the same sense that ncurses is. But either way, emacs default behaviour is a terminal application.

<comment><USER35> GNU Emacs 24.3.1

Copyright (C) 2013 Free Software Foundation, Inc.

`emacs` launches a graphical window.

Any objections?

<comment><USER34> I just installed GNU Emacs on my PC and it seems you're right. I swear that never used to be the case; or maybe I've only ever used emacs on headless servers so it defaulted to the terminal renderer? Weird - but sorry for arguing with you on that point.

<comment><USER35> :-) I guess even ancient 80s (?) software keeps with the _times_ to some degree. Notwithstanding all the idiosyncratic (in our environment) defaults for ergonomics and terminology..</comment></comment></comment></comment></comment></comment></comment>


I'm Very Interesting - <AUTHOR> http://narcissvs.github.io/meh/interesting.html

<comment><USER2> This is where I'd put my pithy, scorning response.

</comment><comment><USER3> Thanks for the fun read, it made me smile on the bus and anything that distracts my mind from the unfortunate souls I share this carriage with is a welcome relief.

<comment><USER4> > (...) anything that distracts my mind from the unfortunate souls I share > this carriage with (...)

That's profound.

</comment></comment><comment><USER5> for the lazy:

"Quidquid latine dictum sit, altum sonatur." = "Whatever is said in Latin sounds profound."

</comment><comment><USER6> I like cats.</comment>


Is sugar really bad for you? (2018) - <AUTHOR> https://www.bbc.com/future/article/20180918-is-sugar-really-bad-for-you <comment><USER2> The original title ask whether sugar is REALLY bad for you, implying even in the title that it may not be that bad.

Then, in the body of the article you get a feeling that it was commissioned by the sugar lobby. Showing the evidence but casting doubt every time. It concludes with a "it does not matter".

<comment><USER3> > you get a feeling that it was commissioned by the sugar lobby

But as it is a BBC site, you also know that isn't the case.

<comment><USER4> You have a rather credulous view of how the sausage gets made.

The author of this piece is a freelance journalist[1] who has written numerous obvious submarines[2]. Do you know how much a freelance journalist costs? Basically: _nuthin!_ I could have put someone like that on my credit card when I was in grad school.

[1][http://www.jessicaebrown.com/writing](http://www.jessicaebrown.com/writing)

[2] [http://www.paulgraham.com/submarine.html](http://www.paulgraham.com/submarine.html)

<comment><USER5> Always interesting to re-read that article. Written in 2005, before Facebook got big, the last paragraphs says

> PR people fear bloggers for the same reason readers like them. And that > means there may be a struggle ahead. As this new kind of writing draws > readers away from traditional media, we should be prepared for whatever PR > mutates into to compensate. When I think how hard PR firms work to score > press hits in the traditional media, I can't imagine they'll work any less > hard to feed stories to bloggers, if they can figure out how.

And today we have "influencers", native content marketing and Medium (etc) blogs that are way less authentic than what PG wrote about in this post.

</comment></comment></comment></comment><comment><USER6> An estimated 33.9% of U.S. adults aged 18 years or older (84.1 million people) had prediabetes in 2015, based on their fasting glucose or A1C level. Nearly half (48.3%) of adults aged 65 years or older had prediabetes.

You may be one of these people and not even know it.

It's an epidemic.

</comment><comment><USER7> Sugar is one of my few vices. I can get addicted to it fairly easy, and it's really hard for me to kick the habit even when I try. When I cut it out of my diet I get to go through a few days of withdrawals where I have no energy, lots of craving, much higher appetite and a general level of annoyedness. After this I get periods of higher quality life with less sick days. Once I fall back in, I don't even like the taste of sugary things for the first few days.

This is completely anecdotal, but my sugar habits are similar to drug-addicts, and while sugar certainly isn't drugs it's not healthy for me either. It's also the only substance in my regular diet that affects me this way.

<comment><USER8> What's a drug? If sugar causes addiction, withdrawal, and it's unhealthy, then it definitely is a drug.

<comment><USER9> It is a drug much like... say, broccoli is a drug. Milk before bedtime is a drug. Running is a drug. It is a drug in the same sense that anything can cause addiction and withdrawal or be unhealthy.

Caffeine is, by itself, a drug in a different sense. It causes a slight addiction and can cause slight withdrawal. It isn't all that unhealthy in itself, however, especially not in the amounts we find naturally in foods. It becomes more of an issue if one is taking caffeine pills and other such things. Eating unhealthily might be more unhealthy, honestly - even though overall, having an unhealthy diet isn't a drug.

<comment><USER10> "It is a drug in the same sense that anything can cause addiction and withdrawal or be unhealthy.

Caffeine is, by itself, a drug in a different sense. It causes a slight addiction and can cause slight withdrawal."

This seems like a drug in the same sense, can you clarify?

Rather than making stuff up, here's dictionary definition of drug: a medicine or other substance which has a physiological effect when ingested or otherwise introduced into the body.

As a user of both sugar and broccoli I can anecdotally attest that they do not have the same physiological effect on my body.

</comment></comment></comment></comment><comment><USER11> So much of sugar's attraction is contextual.

Pure granulated sugar, straight from a packet, doesn't appeal -- not to me. Yet I suspect that cocaine does not have this property.

A bowl of frozen raspberries, with cream and an additional 2 or 3 teaspoons of sugar sprinkled on top, is very sweet, like delicious rocket fuel. Whereas a bowl of ice cream, containing double the amount of sugar, doesn't taste any sweeter.

<comment><USER12> Regarding ice cream: my experience is that temperature has a large impact on how sweet something tastes. Specifically, the same food will taste sweeter when it is warmer. Milk is actually incredibly sweet, but you don't realize that unless you're drinking it warm. If you've ever had a warm soda pop or melted ice cream, you'll probably remember them as sickly sweet—much sweeter than when either is cold.

<comment><USER13> Your experience is consistent with most (all?) people. The way taste and smell work are significantly impacted by temperature due to how the sensory channels work, and how the sensed particles behave while warm or cold.

This is very noticeable with fatty foods in my own experience.

</comment></comment></comment><comment><USER14> In general our bodies evolved for a certain environment. Simple sugars were present in that environment (fruit, honey) but not at high levels. Our bodies are highly adaptable but when you start consuming orders of magnitude more sugar than we evolved for, you are exceeding the design limits.

<comment><USER15> Doesn't that just mean we'll evolve into a new environment?

<comment><USER16> Likely yes. In 100 thousand years.

<comment><USER12> More like 1000 years, but still: much longer than is useful to anybody alive now.

<comment><USER15> Can I use this excuse with climate change?

<comment><USER16> What do you mean? Climate change is about to submerge thousands of square kilometers under the sea in 30 years. Millions of people displaced. Your children and their children will not be able to visit some of the places we see in our tourist guides today: [https://i2.wp.com/vietnaminsider.vn/wp- content/uploads/2019/...](https://i2.wp.com/vietnaminsider.vn/wp- content/uploads/2019/10/Southern-Vietnam-could-all-but- disappear.jpg?resize=750%2C523&ssl=1) [https://i2.wp.com/vietnaminsider.vn/wp- content/uploads/2019/...](https://i2.wp.com/vietnaminsider.vn/wp- content/uploads/2019/10/Thailand-projection.jpg?resize=750%2C430&ssl=1)

</comment></comment></comment></comment></comment></comment><comment><USER17> I recently started tracking my diet more and realised I've been having 200+ grams of sugar a day !

</comment><comment><USER18> Refined (white) sugar is really bad. No good stuff in it. Better to use Raw or unrefined sugar instead that has lot of useful minerals/vitamins in it. I think, the manufacturers extract whatever is possible and make money out of it and what is left is not worth much. I stopped using white sugar for an year and my shirt size has reduced by two inches. No other specific diet restrictions. I also do not consume ready to eat (manufactured foods) that is available in stores.

<comment><USER19> > Better to use Raw or unrefined sugar instead that has lot of useful > minerals/vitamins in it.

> I stopped using white sugar for an year and my shirt size has reduced by two > inches.

How did the presence of additional minerals and vitamins in unrefined sugar help you lose weight?

<comment><USER18> Refined sugar is just converted to fat. Reduced intake helps. Unrefined sugar is just more healthy alternative

</comment></comment></comment><comment><USER20> It's surprising how the general public seems to rely on research instead of first hand experience. Simply change your sugar behavior for a while, see how it affects you, and those are the results you need. The body is (in general) perfectly able to tell you how beneficial a certain behavior is in the long run, as long as you are able to objectively observe the results (as far as possible).

For me, sugar in more then minimal quantities give huge ups and downs, cravings, nauseousness etc.

<comment><AUTHOR> > It's surprising how the general public seems to rely on research instead of > first hand experience.

But medical research assumes that first hand experience can be deceiving, because of placebo effect. It also considers the impact self-deception on researchers, and tries to remove that effect with double-blind studies.

I find it difficult to believe that dietary changes that require a consistent level of engagement, both to be mindful of what you eat and to resist temptations, can be free of placebo effects. And since you're also evaluating subjectively the effects, you are also prone to the researcher's self- deception.

<comment><USER20> > But medical research assumes that first hand experience can be deceiving, > because of placebo effect.

Well pointed out, it is. And for "general public" kind of advice, scientific processes absolutely help and are necessary to get to the right conclusions. The thing is, when someone else benefits from you eating sugar, journalistic pieces that put try to put people on the wrong foot (like these) will come out. Probably papers sponsored by sugar industry as well.

So why not go for your own experience? Like blunte mentions, many people experience the same kind of positive effects - isn't that science after all? And even if it's all just one big placebo and there ultimately is no negative effect of eating loads of sugar, whats the problem? People feel better :)

<comment><AUTHOR> > The thing is, when someone else benefits from you eating sugar, journalistic > pieces that put try to put people on the wrong foot (like these) will come > out.

This is conspiratorial thinking. It's not healthy to shut off every opinion different from yours as an attempt to deception.

> So why not go for your own experience?

As I said, individual experiences are difficult to trust. Anyway, for what it's worth, I did cut drastically my sugar intake, for months. I found no benefits.

</comment></comment></comment></comment><comment><USER21> Tldr: yes, sugar will make you suffer an illness. On the bright side: 1) one person developed eating disorder out of fear of sugars 2) eating sugar make older people more motivated on short term

</comment><comment><USER22> More specifically excess glucose yes, which are usually ingested through high carb foods such as pasta, rice, bread, sugar and sweets, corn and wheat based products.

In contrast rather go for good fat foods such as bacon, avocado, eggs, mineral rich meats such as pasture raised beef/chicken or fish. Half your plate should be leafy greens/veg. These provide good minerals, and molecularly different fuel called ketones instead of glucose, these are closer to stored fats aswell so the body is used to running on the same fuel. So when you're not eating and the body has consumed the energy in the food you ate, it can easily switch to using body fat reserves.

The transition from glucose to ketone in the body causes molecular rearrangement in a process called keto-flu, which can last up to 3 days. You can think of it like going cold-turkey from sugar and returning to the real normal.

It is important to only eat when hungry. And try to extend the periods between eating, even if it starts at 16, then 20 hours, some do periodic fastings of 48 or 72 hours. This kickstarts body self repair and optimization of your entire structure. It seems to even reverse cancer. Research this.. it is amazing.

See this: [https://www.youtube.com/watch?v=vMZfyEy_jpI](https://www.youtube.com/watch?v=vMZfyEy_jpI)

<comment><USER23> What's the deal with milk? I've recently noticed most milk contains 5 percent sugar. Is that ok for some reason?

<comment><USER24> When people talk about sugar being harmful, they mean fructose. Sugar is used as a shortcut, but then some people mix it up or play semantic games by talking about other sugars.

<comment><USER23> Does the research on harms of sugar really only apply to fructose?

<comment><USER24> Basically yes. Other sugars don't have nearly the same effect. It might be a blend of pragmatic reasons in combination with biology (not as sweet, more filling, etc) but the result is still that the focus is fructose.

<comment><USER23> I happened to speak to a friend this evening who is a biochemist

She reckoned refined glucose was the real bad guy, as it's what your muscles actually burn, while other sugars need converting first. Therefore its distribution within the body is unregulated - you eat it, it gets burned, no question. Contrasting the others, for which the conversion process serves as some form of regulation and is likely to run slower when you don't actually need it.

She also acknowledged fructose as a problem, primarily when its in corn syrup (or vast quantities of fruit juice) as you don't have to digest cell walls etc to get it. Whereas in fruit the absorption is slower (though for something juicy like an orange I can't imagine that much slower)

I'm sure this is an oversimplification and any errors are mine!

<comment><USER24> I'm not an expert but I'll say a few things. First glucose is a molecule, so I don't think there can be a 'refined' version.

Also if glucose was immediately burned it wouldn't have a chance to be turned into fat, though I don't know if that is actually true.

If you watch 'sugar the bitter truth' you can see a lot of scientific studies condensed into a good presentation.

<comment><USER23> Agreed on glucose, I should have written glucose aka refined sugar.

<comment><USER24> I don't know what 'refined sugar' means but I have never heard glucose called that.</comment></comment></comment></comment></comment></comment></comment></comment></comment>


Apple locked us in, but how long will the jail sentence last? - <AUTHOR> http://uk.techcrunch.com/2009/09/24/apple-locked-us-in-but-how-long-will-the-jail-sentence-last/

<comment><USER2> _It didn't take a genius to realise that having all your MP3s in an Apple AAC format was locking you in._

Considering this is a standard format and there are Free Software players for these files, I am not sure how Apple is locking you in here. Maybe your Zune won't play AAC, but anything else will. (Edit: the Zune does play AAC.)

<comment><USER3> I think you're wasting to time replying to the alleged "argument" of someone who can type _"MP3s in an Apple AAC format"_. Clearly they've not got the finest grip on the situation.

</comment></comment><comment><USER4> Pretty much no new content here. Just rehashing a lot of other articles we've all seen before. I don't really understand why more iPhone developers aren't writing web apps. Safari on the iPhone is a fast, modern, standards compliant web browser which is quickly becoming the defacto mobile browser engine of choice.

</comment><comment><USER5> This long: <http://www.mozilla.com/en-US/mobile></comment>