Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

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

Open
3 tasks
alerque opened this issue Jan 18, 2018 · 36 comments
Open
3 tasks

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

alerque opened this issue Jan 18, 2018 · 36 comments

Comments

@alerque
Copy link
Contributor

alerque commented Jan 18, 2018

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:

  • 1. Deal with This project is licensed proprietary, not free software, or open source as you call it #212. Pick an actual OSS license and apply it to the current code. The status quo license limbo is crazy and killing the project. Open source projects do not thrive while under proprietary licenses and if you wait until feature completion/maturity to open it up ① a single distracted author will never be able to bring in to maturity and ② there will be little wider interest in helping get it there because the effort invested seems to be poured into a black hole.

  • 2. Appoint at least one maybe two other people some rights to this repository. This would allow issues to be triaged, PR feedback to happen, and at least some moderate development progress without the original owner needing to do anything. I don't know if @iandoug is around or interested but given his level of involvement in the past he might be one candidate. I am also hereby volunteering for this work. I've done this before and am not new to what it takes to organize community contributions. See for example the project history for NERDCommenter which I initially forked because it seemed dead, then was granted access to the repo and have managed there since. I also have access to the SILE Typesetter repo and others.

  • 3. Setup a CI system to test contributions and deploy them to the live site. This will help make sure contributions are working and normalized before PR requests are accepted. Not only will this tend to increase the quality of contributions but it will reduce how much work maintainers have to do manually to process contributions. An automatic deployment system from the (protected) master branch would mean the repository owner wouldn't be pressured to deal with the project while also keeping the possibility of hosted forks to a minimum since the current community run code would always be fresh and live. Setting a CI system is also something I could contribute if given some access rights.

@iandoug
Copy link
Contributor

iandoug commented Jan 18, 2018

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
Copy link
Contributor Author

alerque commented Jan 18, 2018

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
Copy link
Contributor

iandoug commented Feb 26, 2018

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

@iandoug
Copy link
Contributor

iandoug commented May 27, 2018

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
Copy link
Contributor Author

alerque commented Jun 8, 2018

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

@iandoug
Copy link
Contributor

iandoug commented Jun 8, 2018

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

@iandoug
Copy link
Contributor

iandoug commented Aug 8, 2018

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
Copy link
Contributor Author

alerque commented Aug 11, 2018

C'mon @ijprest please! 🆘? 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:

  • Comment here to say "okay go ahead".
  • Add myself and/or @iandoug as an administrator on this repository.

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
Copy link

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
Copy link
Owner

ijprest commented Sep 11, 2018

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
Copy link
Contributor

iandoug commented Sep 11, 2018

Welcome back... :-)

@alerque
Copy link
Contributor Author

alerque commented Sep 11, 2018

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
Copy link
Contributor

iandoug commented Sep 11, 2018

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

@jgwinner
Copy link

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
Copy link

HughP commented Dec 19, 2018 via email

@ctrlShiftBryan
Copy link

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
Copy link
Contributor Author

alerque commented May 15, 2019

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
Copy link

@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
Copy link

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
Copy link
Contributor

iandoug commented Jun 28, 2019

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
Copy link
Owner

ijprest commented Jul 1, 2019

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
Copy link

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
Copy link
Contributor

iandoug commented Sep 3, 2019

@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
Copy link

Vermoot commented Jun 10, 2021

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
Copy link

@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
Copy link

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
Copy link

zelch commented Jul 29, 2021

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
Copy link

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
Copy link
Contributor

iandoug commented Jul 29, 2021

@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
Copy link

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:

  • Pulse Purple
  • Sa by the Sea Red
  • Sa by the Sea Blue
  • grand budapest Pink
  • Sunday Morning Peach
  • Sunday Morning Maroon
  • Sunday Morning Black
  • Vilebloom Pink
  • Vilebloom Blue
  • Vilebloom Coral
  • Vilebloom Yellow

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
Copy link
Contributor Author

alerque commented Jul 29, 2021

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
Copy link

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
Copy link

thoni56 commented May 15, 2022

Is there an independent project started somewhere?

@perigoso
Copy link

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

@phntsm
Copy link

phntsm commented Aug 21, 2022

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
Copy link

folknor commented May 8, 2023

@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.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests