ijprest / keyboard-layout-editor

Web application to enable the design & editing of keyboard layouts
http://www.keyboard-layout-editor.com/
Other
1.33k stars 245 forks source link

Will this project fester and die? Or can the community run with it? #218

Open alerque opened 6 years ago

alerque commented 6 years ago

I've used this project several times over the past five years and find in very useful for putting together reminder sheets of my custom keyboard layouts. I've also previously contributed to the project (the included Kinesis Advantage layout came from me).

I am disappointed to find that this project is still festering in a never-never land. I would like to propose that if the way the project is managed changes it could easily thrive instead of languishing.

Open source projects thrive when there is interest and expertise (which this project seems to have generated) and somebody responds to and coordinates the community's efforts (which this project has not done). The original author has barely participated once or twice on the issue tracker in the last couple years, PR requests have gone unmerged with no feedback as to why, and incoming issues are not getting triaged.

Furthermore I would like to propose the following to fix this situation:

iandoug commented 6 years ago

Hi

Am still around, but do not have required level of Angular experience to play leading role. In truth I got sidetracked into finding optimal keyboard layout which has occupied my time last 18 to 24 months. (Patrick's Keyboard Layout Analyzer)

Currently sitting with smashed left wrist which makes typing difficult.

There are a few things on this project I was dabbling in and which I need to finish, should be able to get around to it in next few months. Have also added some glyphs to the custom font which I need to tidy up a bit and upload.

FWIW IJP changed both country and job a while back, don't know if he is up and running yet. Or how hectic things are for him.

Based on my previous interaction with you, you're a Good Guy so I support your proposals.

Cheers, Ian

alerque commented 6 years ago

Thanks for the feedback @iandoug. I'm sorry to hear about your wrist, çok geçmiş olsun. I'm no wizard with Angular myself and would mostly be hoping to coordinate some contributions from people that are, but there are certainly some bits of the code I can help with too. More important though seems to be keeping the pulse alive!

I see the last 2 years of Github timeline for @ijprest includes only a couple activities. I concluded he was alive, but can certainly understand why an international move and job change would take him away from projects like this. Do you happen to have any personal contact where you could page him in here for a few minutes to deal with items 1 & 2 at least? Ten minutes and a nod from him and we could be on our way.

iandoug commented 6 years ago

I did send Ian an email but have had no reply yet.

iandoug commented 6 years ago

I tried again to contact him ... judging by a web search he is alive and well, just hiding or overworked :-) Possibly he is not checking mail on the address I have.

alerque commented 6 years ago

@iandoug Possibly whatever web search you did would turn up an alternate contact channel?

iandoug commented 6 years ago

Tried guessing email address at his job with three failures... so tried via Facebook... I see he is active reading science fiction books... :-)

iandoug commented 6 years ago

I see IJP did something on Github back in April. So far have had no response to various attempts to get hold of him. Am pondering various options ... I see there are a lot of requests to add more designs to the presets, but the list is already long. I am in the process of building a collection of different layouts (but it's going slowly and have been distracted by other things) at https://www.keyboard-design.com/gallery.html

Hopefully will be able to expand this collection in the near future.

I also have a bunch of things I need to do/add to KLE, but little point in sending through new pull requests when the current 13 are not being actioned.

alerque commented 6 years ago

C'mon @ijprest please! :sos:? Pretty please with a cherry on top? Send me your Paypal and I'll buy you a beer just for 5 minutes of your time? No seriously that's all it would take to:

That's it. That will get us started. Down the road we'd need another 10 or 15 minutes or some information to fixup the hosting situation, but just those first five minutes would breathe life into this thing. Please?

RichardBronosky commented 6 years ago

from: https://github.com/ijprest/keyboard-layout-editor/blame/master/LICENSE.md#L22

I would like to avoid forks

... is not legally binding. I would suggest you go ahead and do what you got to do. When time permits, I imagine IJP, who sounds like a very generous and reasonable chap, will appreciate that the community kept his project alive.

I'd start by announcing on r/mk what your intentions are and see if you can assemble a team of people familiar with the dependencies.

ijprest commented 6 years ago

So it turns out I'm not dead... just been busy with work & some life/medical stuff, and was unable to spend much time in front of the PC. (Also, as it turns out, most mail from Github was going to my spam folder.)

The site is actually in need of a rewrite, IMO: -- The UI is definitely a bit unwieldy and not particularly user-friendly (started off OK, but has outgrown the original design). -- AngularJS (a.k.a. Angular v1) has been deprecated. (I'm not particularly fond of Angular v2, but since it's completely different from v1 anyway, it doesn't hurt to evaluate other options.) -- Site is getting big and pulling in a lot of different JS libraries. Definitely need to use some sort of web-packer. -- Many of the existing libraries we're using have either been abandoned, or have had major updates that make it difficult to easily upgrade them. -- Code is complicated enough that it might make sense to move to Typescript for maintainability.

All of those things lead me to believe that a major rewrite is in order... particularly the UI (a lot of the internal bits can be reused).

I've had a bit of a respite the last week or so, and I'm looking at getting caught up here. I'll spend the next few days going over the existing issues & PRs.

I've also played a bit with different UI options the last week, evaluating various app frameworks. (Nothing worth showing off, yet.)

iandoug commented 6 years ago

Welcome back... :-)

alerque commented 6 years ago

Hey @ijprest welcome back from the dead the spam box. No really we're glad you're here.

Also I'm glad to hear you're interested in developing this some more. I agree with most of the points you make, although my front end chops these days are just a little rusty so I don't even know what technologies to recommend. In any case, may the force be with you.

In the mean time I'd like to recommend that the other project management related issues still get dealt with. Even if you are working on a rewrite and plan to be involved, my points above still stand that both you and the community are not properly benefiting from what open source has to offer. We all have our hands kind of tied. Please pick and post an actual 0SS license now, not at some point in the future when you think everything is hunky-dory. That will free up the mood, let people experiment, and make it rewarding to contribute. Even if that's just fixing a few quick surface level bugs and not helping with the rewrite, that momentum will help the project. Picking a license should come first, then pick whatever UI framework you want to try a rewrite in.

Git is good at stuff like branching. An overhaul / rewrite can happen in a branch without blocking minor bug fixes to the current system. We're not even asking you to contribute your time to maintenance work, but if you can add one or two of us to administer this repository we can help out with issue triage and fixing such things as we can. If my third point above can also be addressed and the site can be updated based on successful CI builds of master, then we can keep a much tidier house even while rewrite work is in progress.

iandoug commented 6 years ago

@ijprest : can you maybe post a list of the frameworks you're looking/looked at? Thanks.

jgwinner commented 5 years ago

I agree with @alerque . I think others can help!

I had a small enhancement request, will post that separately, but looks like development is kind of stalled :(

I'm amazed how reasonably priced a 100% custom keyboard via Ponoko, Keyboard Layout, and the plate and case builder.swillkb.com can be! I really intend to use the output.

Thank you @ijprest !

== John ==

HughP commented 5 years ago

@ijp have you looked at eml? My JavaScript wrangling friends are all the rage about. Especially if you are looking at typescript.

On Tue, Dec 18, 2018 at 10:33 PM John D. Gwinner notifications@github.com wrote:

I agree with @alerque https://github.com/alerque . I think others can help!

I had a small enhancement request, will post that separately, but looks like development is kind of stalled :(

I'm amazed how reasonably priced a 100% custom keyboard via Ponoko, Keyboard Layout, and the plate and case builder.swillkb.com can be! I really intend to use the output.

Thank you @ijprest https://github.com/ijprest !

== John ==

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/ijprest/keyboard-layout-editor/issues/218#issuecomment-448485241, or mute the thread https://github.com/notifications/unsubscribe-auth/AACdJqGV5rhvu6dw3BvzuHa-L4pfJ4R6ks5u6d2ogaJpZM4RirE5 .

ctrlShiftBryan commented 5 years ago

Is anything happening with making the project more open source? Are others still interested in helping with a rewrite into a more modern proper framework like webpack, React or Vue.js w/ typescript?

alerque commented 5 years ago

To date (to my knowledge) the original author has not responded with an appropriate open source license that would encourage contributions (see point #1 on this issue). He is alive (thankfully) and a trickle of activity and contributions mean the project isn't completely dead, but it's still kind of hamstrung without a clear license.

charbs-io commented 5 years ago

@ctrlShiftBryan more than happy to contribute if it goes the Vue.js route. Would love to, in fact. Let me know how things go @alerque . Thanks.

DanielGGordon commented 5 years ago

Would love to see some development on this project. By the way parsing the json output is, a bit illogical. I got it figured out, but it is kind of weird how entries are used as a 'state'. Anyways I wrote software that takes the jsons and I use them in my software to help me set quantities for keys and pricing for SP SA blanks kits. Would also like to add colors to the color swatches... lots of stuff.

iandoug commented 5 years ago

Hi Daniel

  1. Trust you are aware of the differences between the "raw data" json and the exported version?
  2. Trust you are familiar with the "summary" tab?

Colours from which manufacturer?

Cheers, Ian

ijprest commented 5 years ago

I agree that the format is a bit... arcane. It made sense at the time.

FWIW, I had a free weekend, and I've factored out the deserialization code and packaged it up into an NPM package, available here: https://github.com/ijprest/kle-serial. (More to come, as time permits.)

DanielGGordon commented 5 years ago

Ian,

Actually I didn't realize the 'raw' is a bit of a different format. I use a plugin for Blender that uses the .json files, so I already have those. I wrote a parser that converts the json into some internal structure, it just took me some time to figure it out.

That summary tab is helpful, although I do still need to essentially create such a summary programatically from the json.

Colors from SP. For example RDT = 4e008e. I think there are several new SP colors that are missing from the selection.

iandoug commented 5 years ago

@DanielGGordon

The process for adding new colours (accurately) requires IJP to scan a sample of the plastic with his colorimeter. I think he had to buy the samples from SP in the beginning. The GMK guys were kind enough to send me a set of samples that I sent to him. Perhaps we can persuade SP to donate him a set of the new colours ... his project does help drive their sales, after all ...

Vermoot commented 3 years ago

Adding another voice to this:

You seem to have avoided the subject in your earlier replies @ijprest. Please consider posting an OSS license so that this project does not die. It's used by a lot of people in the keyboards community, and now hasn't seen a single commit in nearly two years.

It could use a fresh coat of paint, and thankfully there does seem to be some people with brushes in hand, eager to work on it.

It'd be a shame to see k-l-e go to waste now.

DanielGGordon commented 3 years ago

@DanielGGordon

The process for adding new colours (accurately) requires IJP to scan a sample of the plastic with his colorimeter. I think he had to buy the samples from SP in the beginning. The GMK guys were kind enough to send me a set of samples that I sent to him. Perhaps we can persuade SP to donate him a set of the new colours ... his project does help drive their sales, after all ...

Tbh this doesn't make sense to me. If we know the hex color, that should be more than sufficient. It's just a color code. I know the hex codes for plenty of colors that aren't there. You don't need to scan anything. The swatch just autofills in the color with the correct hex. That's all.

jgwinner commented 3 years ago

Color is a lot more complicated than hex codes. Check out Pantone certified paints/colors, for example. Further, printed is very different from screens (hex codes). It's why CMYK is still around.

For my case, I ended up buying a Kinesis Advantage, and I'm pretty used to it now.

zelch commented 3 years ago

Color is a lot more complicated than hex codes. Check out Pantone certified paints/colors, for example. Further, printed is very different from screens (hex codes). It's why CMYK is still around.

For my case, I ended up buying a Kinesis Advantage, and I'm pretty used to it now.

So, I think that we have two very different use cases here.

If we want accurate colors, then yes, we need Pantone colors or fully scanned samples of the plastic with a color meter, and the user must have a correctly color calibrated display, ideally one that has been color calibrated that day.

Now, if we're willing to accept that the vast majority of users are not going to have a color calibrated display at all, and maybe add a warning that color matching is hard and requires a fair bit of work, then we can get very close to the same level of accuracy that every single site actually selling keys gives (the color on your screen may not accurately represent the color of the final product), and we can then let people add their own colors.

In short, yes, you're right, getting accurate colors is very difficult. But it also doesn't matter, because half of that job is entirely out of our control, and can be safely assumed to not be happening.

DanielGGordon commented 3 years ago

When I need to use a new color from SP, what I do is I email Melissa from SP - she tells me, for example, that the pink from SA Vilebloom is Pantone 7634C. I then google "Pantone 7634C", and grab the hex that comes up for that. I've used this for plenty of renders for Ohkeycaps.com and it turns out pretty well.

https://cdn.shopify.com/s/files/1/0025/7697/3935/products/bubble-gum-planck_1024x1024@2x.png?v=1623108202

iandoug commented 3 years ago

@DanielGGordon

Tbh this doesn't make sense to me. If we know the hex color, that should be more than sufficient. It's just a color code. I know the hex codes for plenty of colors that aren't there. You don't need to scan anything. The swatch just autofills in the color with the correct hex. That's all.

The point is that we don't know the hex colour ... it only got into the KLE swatch after IJP scanned it. Trying to pick a pixel colour from SP photos on the web does not work. It may help if SP (and GMK) could post their Pantone codes as part of the product description. I am aware that the Pantone -> rgba translation is not exact.

There are similar issues trying to get colours of, for example, acrylic sheets ... even different PDFs from same manufacturer render the same items differently. [I did a whole "add new background 'textures'" exercise...]

Cheers, Ian

DanielGGordon commented 3 years ago

The point is that we don't know the hex colour ... it only got into the KLE swatch after IJP scanned it. Trying to pick a pixel colour from SP photos on the web does not work. It may help if SP (and GMK) could post their Pantone codes as part of the product description. I am aware that the Pantone -> rgba translation is not exact.

I guess that's my point. I can get the pantone colors by emailing SP. Example is like the pink vilebloom I mentioned above. You're correct that it's not published, but those pantone colors for keycap sets can be easily determined via a quick email to SP.

I have a list of about 10x colors (with their correct correct pantone/hex colors) that I would like to add to the project. Again, these are confirmed colors, I'm not estimating. SP told me the Pantone, and I simply convert that to hex. Below is the list I have:

A lot of these I need to follow up with SP to find out how they named the colors. But I do have the correct pantone/hex for all of these.

alerque commented 3 years ago

Can I suggest starting a new issue to house the discussion about colors and whatever else that isn't directly related to the original issue here?

perigoso commented 3 years ago

Given the authors unwilligness to work with the community, the license issues, and the fact that the site apparently needs a rewrite from scratch (and i agree), an independent project from scratch starts to make sense

thoni56 commented 2 years ago

Is there an independent project started somewhere?

perigoso commented 2 years ago

not that I know of, I suppose its waiting for someone to take the lead

phntsm commented 2 years ago

Dang. I've been following along with this since 2019 with high hopes, I've even been slowly trying my hand at learning to program. I'd gladly build something new, more than happily made OSS for the community I've come to love very much but... I'm a long way from being good at it and, like everyone, time is humanity's biggest mortal enemy. I can understand @ijprest possibly not wanting to open the doors due to it being their baby, if that is the case, but definitely worry about the project dying. Hopefully they are still doing alright and it hasn't turned into an Ave situation where we've questioned them into a corner and just made the prospect of continuing too stressful. In any case, I'm thankful for what we do have and incredibly thankful that it still does work for the most part. Using KLE in combination with other software has made designing layouts a lot more fun and convenient. I wish everyone who has contributed here the best and hope that you're all doing well too.

folknor commented 1 year ago

@ijprest I don't understand why you insist on fixing everything yourself. You can simply change the license of the code in this repository, and the community will take it from there.