I had some trouble writing these lines because usually I do not want to publish criticism. But Oliver told me that it would be a good idea and I don’t want to disagree
.
Valid for all open source projects, also the JEDI API&WSCL projects heavily depend on their users. This is not a company where people work all day to make a great project. I and other members of JEDI use our spare time after real work to bring forward projects such as JEDI.
Unfortunately, time has changed and less and less people want to provide their skills and manpower in projects like JEDI…and I am not talking about JEDI API exclusively. That is a pity because we will not provide you with source code forever. Instead the process will come to a halt and we will see more and more questions in newsgroup asking why the project doesn’t work anymore in Delphi 2020 (or similar).
I don’t get it. There are many new API functions in Vista and Windows 7. And I see a lot of people writing conversions from C to Delphi so they can use the new functionality. But instead of donating these sources to JEDI API they post it to their local forum or use it in their project as an internal unit. Usually, I come along and ask these people if they want to donate their source to JEDI API. And the chat goes like this:
Christian: “Hey, I am from JEDI API. Maybe you heard from us. It would be great if your conversion could be integrated into JEDI. Do you agree?”
X: “Yeah, I’m using your projects a lot. And of course, I would like to see my source integrated into JEDI.”
C: “Well, I need your source code to be converted to some standards we use. I will send you more information about this easy process. If you have further question just ask.”
X: “Eh? Sorry, but I don’t have time to put more effort into this. Can’t you just do it yourself?”
Let me answer: Well, If we could do it ourselves we would already have done it. But that means that we would need to give up our jobs and private life to convert over 20.000 functions, interfaces and types only for this project.
Did you know that there is a template that shows you how to create a JEDI API file?
Also it often happens that I don’t hear anything from them. Therefore these conversions never get integrated because I need an explicit agreement.
On the other hand there are many people who like just to use the source code in their own project because it makes it easier to write good programs.
May I ask what you did to keep alive the project that you gained from? I have to say from experience that the donations in source and money (in relation to current software prices) are that rare that zero (0) would describe it best. Luckily, this is not entirely true but it is very close to the truth.
Fortunately, there are a lot of companies which are generous and allow us to use their products for free. You can find the list in the sponsors section of this blog. With a monetary donation of nearly zero we could never use their products. I cannot stop saying: “Thank you!“
Also let me use this article to thank all the people who helped or are still helping in these projects. I want to thank them again and again and again! And let me thank the donators again (I wrote them a mail).
–
Christian
24 Responses
Mike
15|Feb|2010 1Donations do not work …
Freeze it … if possible from the license’s point of view withdraw the downlad, remove the installer – make it commerical and you will see the real demand. Somehow if people are concerned if Jedi does no longer exist in Delphi 2020 … ok …
If someone cannot effort even it is an hobbyist, everyone has a brain everyone has fingers can translate.
This is maybe not the Win:Win way – but I understand that you don’t want to feel like idiots working for nothing. If there is a demand then people will pay or donate and the one who provides a well formated API and maintains it gets the whole bunch for free.
BTW: You can be happy the Delphi 64bit is not out otherwise in the forums the ones would complain: “Why ist the 64bit port of the header files not done” and “Guys, we have Linux and Apple – Why is it not already made availbe”. From this I would derive a demand …
I’m not using your code, I understand your goals, but working for free without the intention to gain a commercial revenue later makes no sense. Open Source makes sense in order to have a broad community of testers in the end in the early beginnig. But I would not waste my time to work for free.
Mike
Xepol
16|Feb|2010 2If you come to someone as a supplicant (asking them for the fruits of their labour), then it really sets the tone of the whole converstation.
It’s a parallel style to asking someone “Wouldn’t my car look nicer if it was clean?” and then wondering why they look at you funny when you ask them to clean it for you.
I realize you might not see it that way, but the person you are asking does. They view JEDI as yours, not theirs. Why would they go to a huge pile of effort to not just donate their code to you, but go way out of their way to rewrite it to some exacting standard that doesn’t make sense to them.
I’m not saying the attitude is right, but I am saing the whole exchange is problematic. Granted, you clearly can not count on people just donating code spontaneously, so maybe you do have to shake a few trees – but HOW you shake those trees is probably the more important than shaking them.
People ALWAYS want to know what is in it for them. In fact, I doubt even your contributes are truely altruistic – you started because there was something in it for you as well. Once you accept that, it is simply a matter of looking for the most affordable exchange of value – EGO.
There are a lot of ways to go about it. Maybe some companies would be willing to donate software licenses as prizes (their return is free advertizing and community good will) which could be given away on some basis. Donate code, get your name in the hat for a prize. Largest or most valuable contributor could get a prize for the year.
Heck, even a wall of glory, a certificate of appreciation (laser printers make this cheap and easy), a badge they can put on their website(stackoverflow style) – something so they feel they have gotten a return on their effort.
It doesn’t have to be huge, or even money – but people usually need something for something.
Lex Li
16|Feb|2010 3It takes a lot to learn open source spirit and initiate the passion.
Lachlan Gemmell
16|Feb|2010 4Seeing the recaptcha on your blog comments gave me a fun idea. Imagine instead of using recaptchas on their Delphi blogs, comment posters had to translate a Win32 API method into Delphi.
Mike
16|Feb|2010 5@XEPOL
Getting something from it … ok so far. First I didn’t want to comment on this point – you explained it very clear and understandable and I agree.
Converting header files simply “mechanically” on after the other will not produce a good result, without having a demand and not at least used it in one application or component set does not proove a lot.
In the end there is lot of competence and knowledge gathered from this process for the developer him/herself and somehow flows back into the “product”. But not all can make at least a “indirect” revenue stream from this.
On the other hand a centralized approach for providing header file conversions somehow makes a lot more sense than having thousands of half converted results. In order have the possibility to provide a solid foundation for “next years” conversions people need to participate or should involved in another way.
@Christian: My speach is direct and I’m sure you know what I mean, but I’m Mike I say it. Ignore the ones who complain all the time … they are not worth even a thought. On the other hand don’t assume that someone who made an implementation gives it away especially if work is related with this. This is reallity vs. enthusiasm even if it is the right way. Software and Consultant Business are somehow more related to “music business works” than we recognize it. The game is somewhat crazy – work that does not pay should be done by the community but what happens is that lots of activities that could be sold are serviced for free by a community. Also the state takes taxes because the community work has to be financed somehow. So imho Embarcadero can simply take over this role … if there is a real demand.
A developer in Europe costs at least 35 – 45 EUR an hour … so about 200 USD is not a lot and for south america and other countries … 60 USD … Jedi translation are used in commerical products/implementations sold. Economy does not work the way that only the one who directly sells to an end user is honored. The result for the whole jedi project must be some income to stay alive and for the individual more than a warm handshake at least a journey of 14 days and all events to attend payed is what I expect. These guys work beside their regular work.
Why I’m speaking into direction of a higher price. I experienced that payments via paypal are not commonly accepted on one hand and on the other it is a good excuse for not donating. The second is reallity.
Mike
Jens Borrisholt
16|Feb|2010 6I do not use the JEDI project at all because I do not like the architecture of the project .. If I want to use just at tiny bit of the project .. First I have to vandalize my Delphi with 3rd party components, and afterwards I have to compile a whole bunch of source code into my project …
So perhaps I you changed that some more where interested in the project ….
Jens Borrisholt
Andreas Hausladen
16|Feb|2010 7@Jens: Don’t mix the JCL/JVCL with the JEDI Windows API project.
Jens Borrisholt
16|Feb|2010 8@Andreas
11 MB i quite a lot (JEDI API 2.3 and JEDI WSCL 0.9.3)
But first you download … Then you open “How to setup the library by JEDI Windows API.htm” and Google crome crashes …..
Well then you open an example ..TimedMessageBox … I won’t compile : [DCC Error] Unit1.pas(13): F1026 File not found: ‘JwaWinUser.dcu’
Then you try DiscBurner ….
[DCC Error] uDiscBurner.pas(45): F1026 File not found: ‘jwaWinType.dcu’
I’m sorry but i takes a bit more to impress me ….
So dear JEDI people YES you need help … But that would be with your usability …. If your exampels can not compile out of the box, then there is some thing wrong …..
Jens Borrisholt
Christian Wimmer
16|Feb|2010 9@Jens: Thanks for your report. I checked your problem and going to update the “How To”-page to make more clear the difference between single units and JwaWindows.dcu.
However, Google Chrome works fine for me on the whole page. I guess because it is still quite new it just happens to crash.
Your errors you reported are not really errors because you fell into the two way trap of JEDI Windows API (another name is flexibility). That is to say some examples use the single units like JwaWinUser.pas and some just use one called JwaWindows.pas .
Luckily, you showed me where still problems exists and I will try to make the difference more clear. We heavily depend on such reports. Thanks.
Jens Borrisholt
16|Feb|2010 10library xLogonNotify;
[DCC Error] Unit1.pas(45): F1026 File not found: ‘GR32.dcu’
program BitsArticle2;
[DCC Error] uFormMain.pas(38): F1026 File not found: ‘JwaWindows.dcu’
or
[DCC Error] uFormMain.pas(37): F1026 File not found: ‘JwaBits.dcu’
etc etc ….
Are the ANY of your examples that compiles Out Of The Box ?
Jens Borrisholt
16|Feb|2010 11Sorry I forgot to sign my last message
Jens Borrisholt
Christian Wimmer
16|Feb|2010 12Sorry, if you cannot read the HowToSetup page of this blog then I need to tell you that you will get these problems. May I send you a PDF file of this page instead?
And of course it doesn’t work out of the box because this project is a complex building that needs some effort to get working. You won’t find a similar complex library that doesn’t need some basic steps to be usable. However, as a Delphi programmer you should know that Delphi needs at least a clue where to find these source files. Why do you think that just copying the project anywhere on your hard drive should be sufficient for Delphi?
Jens Borrisholt
16|Feb|2010 13@Christian …
About your offer for a PDF file no thank you …. I dont need it ….
Yes I know how to setup search paths .. But you missed my point .. IF you need a manual to make i compile then there are something wrong ….
“You won’t find a similar complex library that doesn’t need some basic steps to be usable. ” Wrong …. Try the DevExpress suite .. Install and you are up and running ….
Christian as Delphi programmer you must know that it is possible to setup search path on a project ….
Before you tell me that DevExpress is a commercial Suite charging you $8000 for a licence please explain to me how come your examples does not have search paths …
Jens Borrisholt
Christian Wimmer
16|Feb|2010 14DevExpress cannot be compared because of two issues:
1. “Install and you are up and running ….” As you already wrote, you need to install it. This is an automatic process done by an application. Well, JEDI API doesn’t have it. So you need to setup it yourself. Are you willing to write such an setup?
2. Yes, you are comparing apples and oranges. The suite is a commercial work. But they also need to do a setup. And they do. Check your source path in menu Tools/Options and you will find them there added by the setup.
3. “…you must know that it is possible to setup search path on a project” Yeah, believe me. We have tried this way and it was a disaster. Dcu of new and old files were mixed together and we got a lot more problems. Furthermore the authors of these programs used their own folder system and it got a lot worse.
We prefer that as a programmer you should know what you are doing. Thus we leave it to the user to set it up until we get some automatic setup.
In the end you are missing the point completely. You expect from an open source community project to compete with a commercial work and not only this, you are also upset of some minor aspects such as the examples?
I think you don’t know what open source means. If you don’t like it this way than YOU can change it. That’s all this article is about. To wake up people so they help.
Oliver
16|Feb|2010 15@Jens: so let me try to recapitulate, okay?
1. you don’t want to read the manual into which someone has put a load of time and work, so the whole thing wouldn’t have to be repeated for everyone asking the same questions over and over again …
2. since you refuse to read the manual, you don’t properly set up the search paths for your system (or “Delphi installation”).
3. due to the circumstance described in 2. you can’t build the sample projects that don’t contain any redundant per-project search paths …
You know what? I think the problem isn’t any of the JEDI projects in your case – it’s solely your attitude. But that’s okay. Just means you don’t use it, which also means you aren’t part of the intended audience as far as I’m concerned (I co-founded this sub-project and contributed to it for years).
But actually we should be grateful that you make Chris’ point by arguing like that. I’ve had my share of similar users as well. Complaining about obvious stuff because the design of the product isn’t understood and because the documentation wasn’t read. And yes, one can expect a little more from a developer – in particular one can expect a developer to be computer-savvy and not expect his tools of trade to be written for noobs.
// Oliver
Jan
16|Feb|2010 16I really appreciate all the work that is done, and i actually donated some code to the JCL a couple of years ago – not a lot of code, just a few handy date/time functions. The only problem was that i didn’t get any response whatsoever. Not even a “Your code stinks” message came in return.
>C: “Well, I need your source code to be converted to some standards >we use. I will send you more information about this easy process. If >you have further question just ask.”
Maybe that is the issue. Even though it is just a small task, it might just be better to adopt the code and put it in a “non standard section” – better to have some code to start from than none at all.
(although looking at the template i wouldn’t know where to begin – but there are probably a set of instructions somewhere)
And yes – just ignore the idiots that fails to see that a lot of work was put into the stuff they get for free – on the other hand, competent and constructive criticism should be taken seriously, discussed and probably be implemented over time.
best regards
Jan
Mike
16|Feb|2010 17@Christian: There is some truth in Jens word.
>>In the end you are missing the point completely. You expect from an open source community project to compete with a commercial work and not only this,
–> Yes – because the usability of a piece of software, especially components, is independent from the way the development and the deployment are done und under what licence it is deployed. The one using Jedi is an “end user”, maybe a special one called developer ..
>>you are also upset of some minor aspects such as the examples?
Jens argument was – if you ship something make it work – how should someone trust the underlying implementation if the first thing someone tries does not work.
>>I think you don’t know what open source means.
–> Opensource is indpendent from the fact that most communities have to work for free – because the moment you have the source out you are done.
>>That’s all this article is about. To wake up people so they help.
This article spread the message – if you don’t donate (code or money) then we are no longer in the position or willing to support the project. So you described it as a dead horse …
Commerical vs. Jedi –> Allow me one comment. The reason why there is commercial software is that in the very end, when there is a problem – there is a managment that kicks a developers as to correct and fix. Hopefully this can be achieved a different way – we here also do have another understanding – but this the point is in the end . The commitment is defined at a different level.
This does not make your efforts less valuable. I just use “Jedi” but you argued for “all” open source projects…
Mike
Christian Wimmer
16|Feb|2010 181. The usage of the library needs a basic knowledge of how it works. Most Delphi programmers have it already because they know how to setup a source path. In addition I provide a basic introduction how to do it.
2. The stuff is already working. But against ignoring manuals and howto pages I cannot do anything but to point to them.
Patrick van Logchem
17|Feb|2010 19Perhaps part of the problem is the lack of centralized information on all things Jedi. For example, this blog is about the only regularly updated (web-based) resource on Jedi. (I don’t read newsgroups, and don’t visit IRC – don’t know if anyone still does?)
So, as I’ve suggested before, it might help to revamp the delphi-jedi.org website and give it a fresh look with modern functionality; Add a forum, an issue-tracker, a news-feed, copy over all relevant blogs (or integrate delphifeeds), create library overview pages with readme’s, change logs, roadmaps, download links, the works.
This could reboot the community and encite people more to donate (money or code, regardless).
On the other hand, that would cost even more time, time not spend on other things (like having an actual life).
An alternative idea would be to post a news bulletin once or twice a year (much like ReactOS or Wine does), with a request for donations and/or volunteers to straighten-out donated code that needs some work.
Oliver
17|Feb|2010 20@Jan: I too think this is the bigger problem in most FOSS projects, but at least it doesn’t seem to be in this one. Most of the time you here from the FOSS community: “It’s FOSS, patches are welcome.” … well, until you actually start sending patches …
@Mike: well, would it help if someone unpacked the archive and would then find that the projects worked, but as soon as she’d create her own, things would go foobar? I don’t think so.
Also I don’t think that it’s a dead horse or was described as such. But it remains a fact that long term maintenance depends on a contributing community of Delphians. What was the meaning of JEDI again?! And btw, a joint endeavor implies that the individual doesn’t have to put in so much time that any notion of “a life” gets lost
@Patrick: the delphi-jedi.org website is in the hands of other people that are officially the JEDI steering team (for the last few years as far as I understand, all attempts to contact them and get something moving have been thwarted from their end). I even offered at some point to cover the domain registration costs for them for one or two years as a kind of donation (). This team should, IIRC, be elected every year or so, but I haven’t heard any official news whatsoever. It was even a problem to get someone to update the collective website to include our actual project jedi-apilib and I can’t remember whether we succeeded.
In any case I can vividly remember that there were several high-profile members in this project (jedi-apilib), including Marcel van Brakel. I have deleted my Delphi correspondence from years ago, but I would say it must have been around 2003-2004 and even Robert Marquardt (R.I.P.), and Rudi Velthuis (IIRC) and one other Robert (who is involved in JCL) were a founding members.
From the limited feedback I got from the JEDI steering committee over the years (when I still cared) I’ve concluded that the real project JEDI as an umbrella project for numerous smaller projects is dead or in the process of drawing its final breath …
Honestly, if these folks feel like they should be in charge (which used to be a community decision IIRC), they should live up to their positions. If they can’t or don’t want to, then they should step down. But keeping (at any given time) motivated people dangling is about the worst anyone can do. Even projects like JDARTH were stalled by members that were promising new features without opening up to code contributions from those that had the time or were willing to invest it. I think JDARTH wasn’t even ever moved into a real VCS. There was some “canonical version” maintained by Alan C. Moore, IIRC.
// Oliver
PS: Borland, Inprise or Codegear (don’t remember what they called themselves at that time) even had a project website on their servers which used some utterly outdated CMS and at some point seemingly disappeared. IIRC it was http://homepages.borland.com/jedi/ …
Mike
17|Feb|2010 21Oliver:
>>things would go foobar?
Sorry – I don’t get the point .. but ok. I have read through the “How to setup” and it looks simple enough to understand at least for me and so usually for many. I think it is not worth talking about…
My point was simply, you mentioned too. It seems that the concept of donation of source code does not work so simply over the years, this has its reasons*) and maybe the time has come to think over what happens … or how to avoid. The WSCL looks somehow round, very informative. If the Windows API would be somehow structured in themes it would maybe be more attractive, but is not simple to seperate.
Informations is missing, what is open for conversion (coverade). Without this post I would not have expected that you need help?
*) It seems somehow sad that only few people in general are interested in the Windows API and making it available to a broader audience or have time for this. It will be hard to find people that provide knowledge at OS Level and coding Delphi.
… Unfortunately time has changed … beyond –> does not look like a commitment to continous support. –> This was ment by dead horse.
Mike
Christian Wimmer
17|Feb|2010 22I didnt intend to tell that it is over. It is not!
However, you won’t see new conversions until someone donates them or I feel obligated to do so. Mostly, new code is added because it is necessary for JWSCL.
How could we make source code donations more apealing? Grant a JEDI API certificate with name and work? Or any other suggestions?
I can write another article that shows the initial developing of the JEDI API Setup that provides all necessary steps to install JEDI API&WSCL. However this is a huge project I will definitely need some help.
Mike
17|Feb|2010 23A list of whats missing? This is a solid base.
>>How could we make source code donations more apealing?
Grant a JEDI API certificate with name and work?
No …
>>Or any other suggestions?
As already mentioned the security library is something well defined and looks adequate.
If it is possible to organize the WinAPI into “similar” portions on this website (not in in the library itself this fits as it is) then it maybe attracts more people to Windows system programming or makes at least some Delphi programmers give it a try.
In our area since years (it was a lot different in the past) system programming is no longer thaugt.
As long as something is attractive people will assist. In my opinion it is not selfishness of the indiviual that causes the “problem” it is the deceasing basic amout of potential submitters because using the WinAPI is not hype. Especially finding intersect Windows Programmer + Delphi + Has Time.
Mike
Christian Wimmer
19|Feb|2010 24Please, could you give a more detailed example how to achieve this?
Leave a reply
You must be logged in to post a comment.
Search
Paypal donation (EUR)
Download Win 7 Search Provider
Categories
Archives
Tags
Recent Posts
Recent Comments
Blogroll
JEDI Sites
Pages
A design creation of Design Disease
Copyright © 2007 - JEDI Windows API - is proudly powered by WordPress
InSense 1.0 Theme by Design Disease brought to you by HostGator Web Hosting.