17 ms·
Go fonts
- donatj 10y agoInterestingly strange they wouldn't just choose an existing open source font that got along with their license. I guess even you've got Google's wallet behind you it opens a lot of doors.
- gribbly 10y agoI agree, but then again the end result is another open source font family available for everyone to use, so I'm not complaining.
- dx034 10y agoIt confuses me even more considering that Google is behind it. Google just announced fonts for all unicode characters. [1] Why create an extra font that will cause every app to look like a "Go" app instead of a native Windows/Linux/Mac app? [1] https://www.google.com/get/noto/ https://www.google.com/get/noto/
- dsymonds 10y agoGoogle isn't behind it. Some Google employees who work on Go are behind it (well, and Chuck Bigelow too). But as keeps getting said: it's about the licensing.
- dx034 10y agoAs I understand it, some of the main developers are being paid by Google to develop the language. The main page is also hosted by Google. Even though the language is technically open, that makes it a Google language for me. Not in a negative sense, it means that they should profit from it. I still don't understand why they would have to license the Google fonts for testing and using them as standard fonts. EDIT: I just saw that Noto is available with an open license, just not the Go license. But I still think Google would relicense it to Go, seems like something Google would do in this case.
- dsymonds 10y agoI was referring to the Go font, not Go itself; I thought that's what you were referring to.
- ekvintroj 10y agoThis fonts are pretty cool. But I don't understand why they just used Roboto or Noto fonts.
- randomdata 10y agoRoboto appears to be licensed under Apache 2.0. Noto under SIL Open Font license. As these fonts are purportedly intended for testing purposes, presumably they will be included in the package. Adding additional licenses to the codebase complicates the usage. You might agree to the terms of the Go license, but not the Apache license, for instance. Since this new font is licensed under the Go license, there is only one set of terms you need to agree to. This is a much better situation for many reasons.
- modeless 10y agoConsidering the openness of these licenses the concern is silly. The tiny disadvantage of having an extra open license is heavily outweighed by the much higher quality and unbeatable coverage of the Noto fonts. Also, considering that Google owns Noto and has relicensed it in the recent past, it would probably be possible for them to ship it under the Go license too.
- EdiX 10y agoUnfortunately if you use Noto fonts with Go Rob Pike and Nigel Tao will hunt you down, show up to your house and kill you and your entire family, so you have to factor that in to your choice.
- __david__ 10y ago> Adding additional licenses to the codebase complicates the usage. Not really if the additional licensed parts are tests. Most things don't ship their dependencies' tests in the final binary.
- crsmithdev 10y agoYuck, the monospace font feels too dense, and dislike the serifs.
- userbinator 10y agoI think the rendering is horrible too, with plenty of colour fringing and unevenness. The monospace font reminds me of the generic "Asian product manual font" - although the individual shapes are slightly different, it has a similar feeling to MS Mincho: http://lists.w3.org/Archives/Public/www-archive/2013Jul/att-0000/widths-msmincho.png http://lists.w3.org/Archives/Public/www-archive/2013Jul/att-...
- honkhonkpants 10y agoImages of the way a font was rendered on some output device are always going to look weird and wrong on another one.
- TheOtherHobbes 10y agoThe monospace is kind of okay, I guess, but considering the competition there's nothing special about it. Many users will be coding with colour keyword support anyway, so the idea that it's going to be super-great for Go code is strange. I found the proportional font really hard to read. It's not as if Google can't do good typography: https://fonts.google.com/about https://fonts.google.com/about So this seems like a rather self-indulgent and not wholly successful side project.
- 10y ago
- deleted 10y ago[deleted]
- runeblaze 10y ago"The experimental user interface toolkit being built at golang.org/x/exp/shiny includes several text elements, but there is a problem with testing them: What font should be used?" I am really amused by this opening. I guess it is part of the culture to "recreate" something unnecessary and perhaps better when there is resource to spare.
- enneff 10y agoFont licensing is complicated and Chuck is a friend. It was very important to us that Go programmers be unencumbered when distributing programs that use this font.
- int_handler 10y agoWhy is it not possible to just use the system font for these UI elements?
- deleted 10y ago[deleted]
- deleted 10y ago[deleted]
- gcb0 10y agobecause they are reinventing the wheel for a UI toolkit it seems?
- marcelluspye 10y agoWhile possibility is another question entirely, from a design standpoint I can definitely see why an app might want to bundle the font together with the rest of the package. It guarantees a homogeneous user experience.
- idle_zealot 10y agoSure, but generally native applications should use the system font settings to keep things consistent.
- niftich 10y agoFrom the designers of the Lucida typeface family. The monospace serif typeface has pleasant, natural thick-thin strokes, giving it a substantial, typewriter-y appearance instead of the weak lines in most monospace serif typefaces -- remember Courier New?
- WCSTombs 10y agoYep, Bigelow & Holmes, also the designers of the Luxi font family. The monospaced font looks like an iteration on Luxi Mono [0], fixing some of the major issues (lowercase-ell vs. one, uppercase-o vs. zero). The proportional font likewise looks very similar to Luxi Sans [1], the main differences I see being again the lowercase-ell and zero glyphs. [0] https://www.fontsquirrel.com/fonts/Luxi-Mono https://www.fontsquirrel.com/fonts/Luxi-Mono [1] https://www.fontsquirrel.com/fonts/Luxi-Sans https://www.fontsquirrel.com/fonts/Luxi-Sans
- smegel 10y agoWhy wouldn't they just use Google Droid? Strange.
- dublinben 10y agoFrom the comments here so far, it seems really important that they could be under the same permissive license as the rest of the project.
- tapan_k 10y agoAnother reason to not just use Google fonts is to make sure they do not - even if unwittingly - give an impression that the Go language is controlled by Google. This is an open source initiative (at least in spirit) and needs to make choices akin to its roots.
- dxhdr 10y agoIt'd be nice to see font examples with syntax highlighting as well.
- valarauca1 10y agohttps://s22.postimg.org/x92shc4wx/Screenshot_at_2016_11_16_22_11_29.png https://s22.postimg.org/x92shc4wx/Screenshot_at_2016_11_16_2... Rust not Go but same idea
- revelation 10y agoThe screenshot vaguely reminds me of a scanned copy of code from the 80s.
- petters 10y agoYes, it definitely gives the code a retro feel. My first impression is that I like it.
- mmel 10y agoWhy does a programming language need its own font?
- enneff 10y agoWhy not? But seriously, it's of great benefit to Go programmers to have a font that shares the same license as Go itself. Most fonts are not so unencumbered.
- AlphaSite 10y agoBecause it's extra, unnecessary cruft. May as well throw in generics as well, and inheritance and may as well develop your own OS for go while you're at it. As you can tell I think this is just a silly waste of time for a compiler. Non native applications are near universally ugly and poorly designed and adding a custom font is just another slap in the face.
- enneff 10y ago> Because it's extra, unnecessary cruft. May as well throw in generics as well, and inheritance and may as well develop your own OS for go while you're at it. False equivalences are fun. :-) > As you can tell I think this is just a silly waste of time for a compiler. But the people who did this have nothing to do with the compiler.
- randomdata 10y agoExtra cruft from a technical perspective, but it is clear that the law was the primary driver here.
- sambeau 10y agoI was surprised to see that you didn't add any Go-specific code ligatures (e.g. for <- like Fira Code provides[1]). Has there been any thought into providing a variant with some? While I could see why some might be against them I think they're rather fun and can make code more readable. [1] see for example https://github.com/tonsky/FiraCode https://github.com/tonsky/FiraCode
- jjn2009 10y agopretty soon you will not be able to compile go without it being written in the correct font. thus making go code the same no matter where it is written or displayed!
- wickawic 10y agoBrings a whole new meaning to homoiconicity
- reikonomusha 10y agoHomoiconicity has more to do with code in language X being directly written syntactically and semantically as a convenient data structure manipulable in X. It does not have to do with consistency in appearance.
- galago 10y agoElements of the proportional font, like the little foot on the 'a' remind me of Lucida Grande. Lucida Grade was the original OS X system font, which B & H also developed. This is not their first rodeo, its all about licensing.
- inopinatus 10y agoThe monospace is clearly an offspring of Lucida Typewriter. It is slightly condensed, a touch heavier, and with some obvious code-friendly variations (like a single-storey 'g' and a crossed zero) and a quirky, asymmetric curve inside the bowl of the 'b', 'd', 'g', 'p' and 'q' that I've instantly warmed to. I'll give it a red hot go and develop in it for a day, but those chunky slab serifs are much busier than the Menlo I've preferred since 2009.
- myg204 10y agoDefinitely has a Lucida Grande feel to it, which, if I recall correctly, was one of the font on Plan9. The Go Mono isn't close to Lucida Grande Mono, but certainly looks like an interesting update.
- deleted 10y ago[deleted]
- 4ad 10y agoYeah, Plan 9 used Lucida Sans Unicode, of which Lucida Grande is a derivatives with very minor modifications. Personally I use Lucida Grande for all my programming.
- kebolio 10y agoGo Mono is closer to (or a remake of) the Pelm font from Plan 9.
- kebolio 10y agoGo Mono is closer to (or a remake of) the Pelm font from Plan 9.
- ashearer 10y agoThe page itself is set in the proportional version of Go. I found it distracting to read because of the uneven character widths. The majority of the characters (like 'b', 'd', 'f', 'k', 'l', 'o', and 't') are narrow, but some common letters (mainly the 'e' and 'c') are round and wide, with generous space around them. I can't get past the impression that I'm reading paper that wrinkled when it went through the printer. Even the name "Go" has a wide G, awkwardly large space, and narrow "o". Perhaps it's an artifact of the browser rendering, because it's less noticeable on the alphabet sample image. The monospaced example reminds me of TeX-produced CS papers at first glance. I'll have to give it some time.
- fusiongyro 10y agoThere are some bad kerns too. Look at "Yet" and notice the 'e' is not tucked under the 'Y' at all.
- kccqzy 10y agoThe alphabet sample image has problems too. The space after uppercase G is plentiful compared to the space after uppercase V. Granted VX is not a common letter combination but still this shows some bad kerning nonetheless. Also I find the hyphen surprisingly wide (in the proportional version). In fact so wide that I keep thinking it's an en–dash and it reduces my reading speed: my brain has to slow down and mentally correct it to hyphen.
- SomethingOrNot 10y ago> Also I find the hyphen surprisingly wide (in the proportional version). In fact so wide that I keep thinking it's an en–dash ... So did I! At first I thought that they had inserted en-dashes by some mistake.
- pmontra 10y agoThe monospaced font looks very old, I don't like the look of it. The proportional one is ok but it can't be used for programming. In part because of the reasons you gave but especially because there is almost no gap between the two = characters in == and @ is almost superscripted, which looks wierd. I'm going back to Sans Regular (whatever it is on Ubuntu). It has its own problems (I and l look the same) but it's still better.
- jxy 10y agoThe vertical line of the box-drawing characters (U+2502 and etc.) is not long enough. While you are at it, can you guys complete the APL symbols?
- SanFranManDan 10y agoThis reminds me of Java applications that you can immediately tell are Java because of the weird font. I don't see an advantage over using native system fonts. As far as I know you don't need a license to use fonts installed on the system running the application. Why does the font need to be bundled? The wide spread adoption of this is going to make go programs stick out like a sore thumb.
- bhrgunatha 10y agoJetbrains are the only example I've come across that provide an option for native UI elements in Java apps. To expand on your point. What about the combination of fonts and UI elements I've chosen for my desktop environment. Will this new UI toolkit ignore those choices I've made and stick to using their own font? It's bad enough already, for example on linux, where there are already two incompatible UI toolkits being used for the majority of applications, GTK and Qt. It's already difficult enough getting a consistent UI for applications that use both.
- lobster_johnson 10y agoEclipse is — or was, I haven't used it since 2006 — also great. Instead of using the horribleness that is Swing, they wrote their own toolkit, SWT, which uses native UI controls, and it's the only Java app I've ever used that had a native look and feel. (They did a lot of custom rendering, of course, but it was still able to feel native.)
- pvg 10y agoWhat options for native UI does IDEA provide? It's mostly a Swing app.
- creshal 10y ago> I don't see an advantage over using native system fonts As touched on in the article, you need a standardized font you have control over for automated testing, to make sure you're getting reproducible results. OS fonts are too inconsistent for that. Now, why they couldn't use any of the literally hundreds of other open-source fonts instead that Google made…
- grok2 10y agoGo has a cross-platform GUI toolkit? Should I wait for it instead of learning Qt/C++?
- vanderZwan 10y agoIt's experimental, so I wouldn't. Pick it up when it gets better. Qt/C++ skills are both good to have anyway, so it won't be time wasted.
- 0942v8653 10y agoI think these are made in preparation for high-DPI screens. The serifs are short enough that I couldn't see them all on my regular screen (particularly the right-hand serif on the lowercase 'w'). But on my phone I would be able to see it perfectly well. On a high-DPI screen, the text isn't blurry or anything. They didn't focus on the rendering at all it seems, but made their screenshots in high resolution.
- gragas 10y agoHonestly how could serif be a good idea? I do not see the appeal at all.
- chrissnell 10y agoThe monospace font reminds me of the console on old Sun workstations running SunOS. It's pretty hideous. The alphanumerics feel rather slapdash, like this whole thing was put together by the foundary on a Friday afternoon and made to meet the minimum requirements but without much love.
- fusiongyro 10y agoIt's easy to fix though. Just pour more Knuthian bullshit on it until the hackers think its flaws represent important aesthetic decisions. It was made by an important type foundry adhering to the strictest mathematical principles, after all!
- __david__ 10y ago> The monospace font reminds me of the console on old Sun workstations running SunOS. Yes! It really does: http://toastytech.com/guis/sv411boot.png http://toastytech.com/guis/sv411boot.png But I think it's mostly to do with the non-uniform line thickness (look at the asymmetry of the 'x'). To me it looks better than the SunOS font, but it certainly does resemble it. That's probably why it looks "old" to me, and not in a particularly nostalgic way. Then again, I didn't use Suns all that much.
- dbl9 10y agoI've actually been trying to find a PCF or TTF variant of that Sun font. If anyone can point me to it, I'd be grateful. Maybe in some folder of opensolaris or illumos?
- zhte415 10y agoWhen reading this, I wanted to check the x-heights of letters, as they seemed proportionally shorter than for example Roboto. Ended up not checking, but coming across an article by Google on typography in general, part of their Material Design. https://material.google.com/style/typography.html#typography-typeface https://material.google.com/style/typography.html#typography...
- deleted 10y ago[deleted]
- SamReidHughes 10y agoI just got this set up on a Linux system and I think these fonts are absolutely fantastic. This is the only "programmer's font" I've tried that was ever any good.
- DrTung 10y agoI 2nd that. Before I've usually ended up with PT Mono, but this Go font is bit more pleasing to work with. Thanks Google.
- noir_lord 10y agoI like them but they won't be replacing PragmataPro which has ligature support and works in everything I use, is nicely condensed without feeling cramped and is just beautiful to look at. Screenshots: http://imgur.com/a/tiE76 http://imgur.com/a/tiE76 first image is Pragmata second Go font, no contest for me.
- hkmix 10y agoI used to use Pragmata, but have since switched to Iosevka. It's similar in width and also supports ligatures.
- jimjimjim 10y agoNice. it looks interesting. Do i need it? don't know. Will it be useful? might be. I don't see any reason to complain. It's a completely free font people. I see no downsides to this.
- 4ad 10y agoExactly. On some other forums people complain like someone is forcing them to use it! I don't understand it at all. How does it affect their life in any way? Don't like it? Don't need it? Move on with your life...
- jrockway 10y agoLove that screenshot. Reminds me of rebuilding Emacs, opening it up, and immediately remembering that I forgot to enable Xft or something.
- vorg 10y agoI see there's a black-on-white Gopher hiding at U+F800 in the middle of the BMP Private Use area (U+E000..U+F8FF). Besides that, only Latin, Greek, Cyrillic, and a few box drawing glyphs are provides. Are there any plans from the Go Fonts team to provide glyphs for all characters in the BMP, and beyond?
- jballanc 10y agoI love that they actually included Bigelow's explanation of each decision made. So often (especially in the realm of programming fonts, it seems) decisions on letter forms in new fonts seem to be made "because it looks nice", but there is, in fact, a science behind it all. Indeed, Go Mono ticks every item I look for in a programming font (one of only 2 or 3 programming fonts that does): - slashed 0 - easy differentiation of 1, i, l, and | - open lower-case g - proper kerning and adequate width of r, n, and m Unfortunately, I don't see myself switching away from Menlo to Go Mono for a silly and purely aesthetic reason: 5 point raised baseline * . Yes, yes...I know that's how pretty much every font has done * since forever, but after working with the vertically centered, six-pointed * in Menlo (and SF Mono), it's hard to go back.
- dbl9 10y agoDo you write OCaml or C (comments) by any chance? I've often found it hard to discover a typeface that has (* this is a comment *) vertically centered. My usual choice is Fira Mono because it looks great and centers * vertically, though I would love a serif monospace font. Maybe Go Mono will be revised but I doubt it will be updated anytime soon. When you say "6 point" do you mean it's bigger than usual? Is there a place to obtain SF Mono without an Apple Developer account if you don't happen to have a macOS installation handy?
- jballanc 10y agoI've found the vertically centered "" to be far superior almost everywhere. Definitely for comments, but even for pointers (yes, I do write a fair bit of C) it becomes clearer that the glyph is part of the type signature, and not just a footnote. By "6 point" I mean the character itself has 6 "arms", instead of the typical 5. For my taste, it makes the glyph feel more balanced. There is this repo: https://github.com/hbin/top-programming-fonts https://github.com/hbin/top-programming-fonts . Unfortunately, I'm not familiar with the legality of obtaining Menlo without OS X/macOS. It is a variation on Bitstream Vera Sans, which is AFAIK Open Source, but I am completely ignorant when it comes to how licenses apply to fonts (as opposed to code). As for SF Mono, that seems to be impossible to obtain even if* you have macOS and an Apple Developer account (only the UI fonts are available for download). I managed to dig them out of the Xcode application bundle and install them as system-wide fonts, but was greeted with a very scary warning stating that installing these fonts could destabilize my entire system (so far my OS is still running, though)...YMMV.
- sjellis 10y agoI'm surprised that people haven't commented on the implicit story here: the intention to deliver the "Shiny" cross-platform graphical toolkit for Go. If that happens, Go becomes one of the very few programming languages with a default cross-platform UI library.
- elcct 10y agoI hope not with that font. It looks amateurish.
- currysausage 10y agoThe font appears to be a refined version of Luxi Sans, which in turn is a refined version of Lucida Grande, which had been OS X's system font for 1.5 decades. Personally, I probably wouldn't call Bigelow and Holmes amateurs.
- creshal 10y agoLet's hope it won't be as ugly as the Java crap. Or Tk.
- pron 10y agoDo you mean the old Java crap, like https://netbeans.org/images_www/screenshots/platform/jmonkeyengine.png https://netbeans.org/images_www/screenshots/platform/jmonkey... https://netbeans.org/images_www/screenshots/platform/nbAWSAdministrator.png https://netbeans.org/images_www/screenshots/platform/nbAWSAd... https://netbeans.org/images_www/screenshots/platform/lg_soft.png https://netbeans.org/images_www/screenshots/platform/lg_soft... https://netbeans.org/images_www/screenshots/platform/GGSSEphemerisVisualization.jpg https://netbeans.org/images_www/screenshots/platform/GGSSEph... https://netbeans.org/images_www/screenshots/platform/platypus-nb.jpg https://netbeans.org/images_www/screenshots/platform/platypu... https://netbeans.org/images_www/screenshots/platform/blueMarine.jpg https://netbeans.org/images_www/screenshots/platform/blueMar... or the new Java crap like http://fxexperience.com/wp-content/uploads/2011/05/Charts-Bar-152839_1080x675.png http://fxexperience.com/wp-content/uploads/2011/05/Charts-Ba... http://docs.oracle.com/javafx/2/best_practices/img/saleshistorytab-small.png http://docs.oracle.com/javafx/2/best_practices/img/saleshist... https://blog.idrsolutions.com/wp-content/uploads/2014/03/viewer_drop_down.png https://blog.idrsolutions.com/wp-content/uploads/2014/03/vie... ??
- chj 10y agoLooks like a good font choice once you get used to it.
- deleted 10y ago[deleted]
- rcarmo 10y agoThese look exactly like the Plan9 fonts (which IIRC were also by Bigelow&Holmes). Ironically, the Plan9 folk seem to shun TrueType in favor of bitmap fonts... I'm pretty sure the Raspberry Pi Plan9 image I'm running at my home office only has bitmap fonts installed.
- 4ad 10y agoPlan 9 uses Lucida Sans Unicode, which was the OS X system font (as Lucida Grande) until recently. There is a resemblance between this font and Lucida Sans Unicode, they come from the same foundry, after all, but they are significantly different. > Ironically, the Plan9 folk seem to shun TrueType in favor of bitmap fonts. It's true Plan 9 uses bitmap fonts, but that's just how the technology was implemented (so you could use BitBlt, etc), there is no shunning of trye type fonts.
- deleted 10y ago[deleted]
- petters 10y agoThe monospace font looks interesting. Fixed-width serif fonts are not that common. But creating fonts for Go? That sounds like a solution in search of a problem.
- ansgri 10y agoFixed-width serif is exactly what I wanted! It's refreshing to be able to switch from serif to sans-serif, I do that on my Kindle about once a month and the text immediately becomes less boring.
- rbanffy 10y agoThe monospaced font reminds me of Luxi Mono (with the 0 solved) and of the Sun console font.
- _pmf_ 10y ago> What options for native UI does IDEA provide? It's mostly a Swing app. You're right; it's typical bullshit by JetBrains shills. Eclipse has SWT with native UI widgets and IntelliJ is and will always be a sloggy Swing application.
- pvg 10y agoWhoa there. I was asking a question, somewhat incredulously. Maybe the person who wrote that comment is misinformed. Maybe they know something we don't. Nowhere did I suggest they were 'JetBrains shills' and neither should you, unless you have some evidence of it.
- bhrgunatha 10y agoIn the UI options there's an option for GTK but I've just checked (both IDEA and PyCharm) and I think it's just a theme. I genuinely thought it was using GTK widgets.
- fs111 10y agoThat is most likely the GTK look and feel that ships with java swing. It is an emulation, not native.
- threeseed 10y agoI can't speak for Linux/Windows but on OSX IntelliJ destroys Eclipse in every single aspect. And frankly I don't care whether it has native UI widgets or not I just want it to be fast and smooth.
- PaulHoule 10y agoWindows too. I think eclipse is so fubar that many users cant envision that an ide might be dramatically more stable than eclipse.
- sctb 10y agoYou can't make baseless accusations of shillage here. We detached this flagged subthread from https://news.ycombinator.com/item?id=12975014 https://news.ycombinator.com/item?id=12975014.
- amelius 10y agoI hope this UI toolkit will take the good parts of CSS and HTML, and perhaps toolkits like React.
- swah 10y agoWish they had talked to Fabrizio Schiavi..
- talideon 10y agoIs it just me, or is every other font produced by Bigalow and Holmes essentially Lucida?
- dbl9 10y agoThis looks like an improved version of Luxi. I couldn't use Luxi Mono because O and 0 look the same, but this fixes that. I had been looking for a serif monospace font for a long time and this looks great. Did anyone else try to use it in xterm or rxvt-unicode? In xterm and Emacs the vertical spacing seems to be too small, making it look pressed together. In rxvt-unicode the only problem is that the renderer displays it stretched horizontally like a short but wide block.
- deleted 10y ago[deleted]
- tyingq 10y agoThe first example shown in the post reminds me of the boot up font you would see on an old SPARCstation.
- sgdread 10y agoI usually prefer DejaVu fonts [1]. One of the best fonts for terminal and coding under free license. [1] http://dejavu-fonts.org/wiki/Main_Page http://dejavu-fonts.org/wiki/Main_Page
- kingmanaz 10y agoNot a bad font. Personally prefer Anonymous Pro.