Introducing Electron Fiddle
medium.com
medium.com
I'm sorry, it's my fault, at the age of 66 I have visual limitations that make dark themes very uncomfortable. I just wish developers would not assume that everyone prefers or is able to use a dark theme. Not all of us can.
To really get comfortable with it, I would also want to be able to select a proportional font and tabs instead of two-space indents. But that can wait; a light theme option would be a good start.
I recently used this feature in a flight for the opposite situation. I was trying to learn go in the go playground but their editor only offers a light theme. After a couple of hours my eyes got tired and I was able to continue thanks to this accessibility feature.
Blacking out the screen in those conditions reduces that strain. But you still have to maintain a good brightness and contrast between the elements otherwise you trade one issue for another.
There's no one size fits all unfortunately. Which is why it's great when developers allow for customization.
That's a really good point.
If I have to use a computer or phone under poor lighting, I turn down the display brightness to match.
Otherwise, I prefer to be in a space where I can read something written on paper. And then I adjust the brightness to match that - not cranked up too bright like I see sometimes.
There are two kinds of dark themes: low-contrast, washed-out dark themes that use various shades of greys, and high-contrast, white-on-black dark themes that are good for people with poor eyesight or poor quality hardware, and for use in an actually dark environment.
Naturally there are things in between the two, but by and large there’s a pretty clear division between the two and which is provided, and the latter are pretty rare.
I still prefer those themes to black-on-light but I do not love them.
There is no fundamental difference between one bits and zero bits. This should be self-evident to any programmer. After all, you can apply a "not" function to any binary string to turn it into another string with all the bits reversed.
Light pixels and dark pixels each convey the same amount of information. Light themes vs. dark themes is not a question of which one lets photons carry more information, it's the same information either way.
The real difference is how our far-from-perfect human eyes perceive them.
For an inverted color scheme (light information on a black background) on a display where black pixels don't emit light-- the only emissions your eyes have to take in are information.
Your digital logic analogy is sanitized. If the high logic level is at 10kV your equipment is going to have a hard time.
We're talking about staring into a light source, there's a difference in total energy your eyes have to absorb.
Maybe your argument is self-evident to any theorist, but it completely ignores the physical world.
I'd also add that when reading with reflected light (such as reading on paper), your eyes are going to be taking in the same amount of light regardless of where they look in your environment because you're just reading ambient light. Completely different than staring into a light source.
Try programming while looking through an LCD directly at the sun and have it display characters by darkening pixels of direct sunlight aimed at your retinae then tell me there's no difference between a lit pixel and a dark pixel.
Hey, there's no difference between a one bit and a zero bit, here's a great computer interface idea: Transmit binary data to the user with gamma rays. The only difference is in how their far from perfect human body experiences them.
Having dark and light themes, and high contrast ones at that, are a huge help for me. I am using the "MiniHack" app on an iPad now in its dark theme, but it is dark gray instead of a solid black background.
The ability to change colors also helps. I removed all pure blues from my IDEs/editors, for example. (JetBrains, VIM and Emacs are fortunately all highly configurable.)
I assume you're being sarcastic here. Accessibility issues like this are clearly the fault of an industry that hires mostly twenty-somethings with perfect vision, then doesn't train them in this important area.
And really, why does every app need its own theme or color scheme anyway? Sure, each company likes having its own brand. But do the users like this? I think that every app using the OS-supplied theme is good not just for accessibility, but for a consistent, distraction-free user experience. But then, I'm visually impaired myself, so that skews my perception, and I probably don't understand what the sighted masses like.
Maybe we need to encourage young developers to spend some time at a mature software company before starting their own.
Edit: I made the same mistake myself. While I was still in college, I became sole developer for a tiny company that developed software for blind people. So I was obviously hyper-aware of accessibility for that user base. But I was ignorant of other important considerations, like internationalization, security, corporate manageability (working well with Windows Group Policy and the like), and even accessibility for other disabilities.
While that's perhaps a different example due to one group not being actually excluded from something it shows how business behaves. Then you consider the risk of staying a startup to your future, your retirement, the funders cash/investment and honestly I'd you spent a dime on accessibility at this stage it would be reckless behavior.
Now having said that, once a product mix and the positive trajectory path has been established, then I don't think it's reasonable to delay, not even to say 'wait until we are profitable', because at that point you need to start addressing access to everyone equally as part of your business and if your business cannot sustain itself being inclusive then it's best to establish that earlier than later IMO.
Ps. I'm in no way poo pooing your point about the needing to be more training around accessibility, because ultimately that's part of the meat and potatoes of bring a dev. Like knowing SQL, JS, etc. All part of the basic skills we all need to survive most days at work. And accessibility is in the group. I'm only saying that a startup needs to first determine demand for it's product with the largest addressable group in it's core target audience, then branching out should immediately include accessibility IMO.
However, like the grandpa comment says- it’s an accessibility issue. There ought to be both or have option to customize the primary, secondary, accent, background, and text colors.
Definitely. I wonder if the whole problem here is that macOS took so long to get one, so developers have taken it upon themselves to do their own, and then some assumed that everybody wants a dark theme.
And people actually seem to care passionately about it, on both sides of the issue, for many different reasons!
https://feedback.unity3d.com/suggestions/editor-dark-skin-th...
https://forum.unity.com/threads/dark-theme-pro-only-seriousl...
The funny thing about Unity's dark theme is that it is not only a dark theme, but it has much lower text vs. background contrast than their light theme. And the light theme is rather low contrast already.
Combined with their failure to support high-DPI displays, this led to a rather unpleasant experience. The only thing that made it palatable was that most of the time I was writing code in Visual Studio and not in the Unity Editor.
Can you elaborate on what you experience, and why a lighter theme is necessary for it to be comfortable?
With dark theme it feels like I have to constantly strain to discern letters while with white theme there is no such feeling. It's like several additional dioptres added to your vision.
I use shells/terminals with dark theme but I change them from gray/green/yellow on black to 255 bright white on black and increase fonts by 2-3 points compared to regular text, then it kinda works and OS overall has white theme on other monitors at the same time.
I have two problems with dark themes. One is that much of what I do on my computer will have light themes - websites, GIS software, Word and Excel, PDF documents, etc. It's hard on my eyes to switch back and forth between these and a dark themed editor - like walking in and out of a dark theater on a sunny day, over and over again.
The other problem has to do with eye focus. The irises in your eyes stop down or open up to adjust for light or dark. Just like a camera lens, stopping down (reducing the aperture) can help with focus. A perfect lens can focus sharply at any aperture; a less perfect lens will focus better if you stop it down.
Here are some interesting discussions on the topic:
I have been wondering why I longed for Dark Theme when I was young, and now twenty to thirty years later when Dark Theme in general finally arrived. I hate it.
I think the age and eyes strain explains a lot. I used to do font 8 or font 9 with all interface, code or web page. Everything is too large and it is like waste of space. Now I just wish everything has a 120% DPI scaling.
I’ll put that on my personal to-do list (unless someone sends us a Pr first)!
To run this on any machine you would need to download the Electron Fiddle environment and compile the Electron app binary every time... Very similar to normal development.
So maybe electron just isn't as convenient for developing, compared to the browser technologies that the article compares it to...
- the ability to easily get Electron help on StackOverflow, etc. by sharing the exact code you're running
- one click (or close to it) examples of every single Electron API (I often find examples jsfiddles to be a much faster way to learn how to use a new API than digging through documentation)
- possibly making it easier for people who are new to coding to get their feet wet in programming a desktop app without having to open a terminal. This is especially true if they can start with a working app and just tweak small things and see their tweaks reflected in the running app.
All people are different, of course, but my biggest use cases of jsfiddle are using examples to learn how to use new frameworks. I’m excited to see the same thing for Electron apps!- the ability to easily get Electron help on StackOverflow, etc. by sharing the exact code you're running
- one click (or close to it) examples of every single Electron API (I often find examples jsfiddles to be a much faster way to learn how to use a new API than digging through documentation)
- possibly making it easier for people who are new to coding to get their feet wet in programming a desktop app without having to open a terminal. This is especially true if they can start with a working app and just tweak small things and see their tweaks reflected in the running app.
(Don't use two space indents to force code style except for code samples.)
For example take the IntelliJ IDE;
- It's cross platform
- Can run apps straight from stackoverflow
- Present configurations, so people can focus on coding rather than tweaking.
Electron Fiddle is basically the same thing, to me it would be more appropriate to call this Electron IDE. I'm still impressed and believe it will be a useful tool, though.
Then stop it!
What's new in Electron version 3, and how stable is it? Is there a good higher level summary than the release notes, and could somebody please describe what are the significant differences between version 2 and version 3, and how far along and mature is version 3?
How useful is this feature? I mostly do webdevelopment though.
It confuses me that slack, with their hundreds of developers, cannot build a native piece of software that doesn't require 10+ seconds to init.
> Electron Fiddle is entirely open source and developed by a group of volunteers.
And even if it was paid product, what does bloat have to do with marketing?
If you want people to adopt your open source code you have to do some marketing of some sorts. Otherwise it’s just another dead project on Github.
A lot of things submitted to HN are also for the clicks, doesn’t mean it’s a bad thing.
I would appreciate this point if it wasn't for the fact that a lot of actual developers use this platform. It doesn't make sense for people knowledgeable about tech to not spend 10 minutes searching for a better blogging tool.
I've begun to subconsciously avoid any links to a medium post regardless of the content. I don't know if there are other people who do this, but it definitely is indicative of how bad the website has become.
Developers use Medium for the same reasons other people do.
Can you give me a legitimate reason why someone creating developer software finds medium easier than say something like github pages?
> Developers use Medium for the same reasons other people do.
Such as blogspam.
This particular article can further be disregarded because the GitHub project README is practically the same content without all the stuff that Medium does to be annoying.
No biggie, I guess, but it adds up.
> Electron Fiddle let's you create and play with small Electron experiments.