From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Nala Ginrut Newsgroups: gmane.lisp.guile.user Subject: Re: How do you earn money with Guile? Date: Fri, 03 Jun 2016 17:33:25 +0000 Message-ID: References: <87h9dali3f.fsf@web.de> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Trace: ger.gmane.org 1464975272 2863 80.91.229.3 (3 Jun 2016 17:34:32 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Fri, 3 Jun 2016 17:34:32 +0000 (UTC) To: Arne Babenhauserheide , guile-user@gnu.org Original-X-From: guile-user-bounces+guile-user=m.gmane.org@gnu.org Fri Jun 03 19:34:27 2016 Return-path: Envelope-to: guile-user@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1b8sz4-0007YG-5E for guile-user@m.gmane.org; Fri, 03 Jun 2016 19:34:10 +0200 Original-Received: from localhost ([::1]:56911 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1b8sz3-00039v-AE for guile-user@m.gmane.org; Fri, 03 Jun 2016 13:34:09 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:49917) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1b8syZ-00036e-VL for guile-user@gnu.org; Fri, 03 Jun 2016 13:33:42 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1b8syW-0000jn-6n for guile-user@gnu.org; Fri, 03 Jun 2016 13:33:38 -0400 Original-Received: from mail-qg0-x234.google.com ([2607:f8b0:400d:c04::234]:33902) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1b8syW-0000jA-1j for guile-user@gnu.org; Fri, 03 Jun 2016 13:33:36 -0400 Original-Received: by mail-qg0-x234.google.com with SMTP id p34so15165961qgp.1 for ; Fri, 03 Jun 2016 10:33:35 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:references:in-reply-to:from:date:message-id:subject:to; bh=yHwq/ZUMX8pcALpkEyWwRYRkdvOejvoV/ZEmKzq02dg=; b=rhGzf1ho6dMev3aRHcfIjTsf2uQGHvuFmG1MY6Eh5fEgJoX19gNOyCMeQRsJr9IpSd hVDkubb1+CB0mSvxjJ+D3/pbFLGEz6W6aKcE79z6RpSsACMpyqz/IsKO/LmEpY8dMdQV BoYlLogoZnTZv3kNxSX+PqtAHkb/FF7asTOqYWdB9XA9SNnVwDtPbmiONrmTyXIS94pN WpC14Uhb0M2Xmign2GFvZw62XBgQ0wwHDoCAJdN3qaJzG91NhhG1t6oi407RKkD9r3qX 6QwVoYKu7IDlprFvkY3KybFNfQcdikFz8qy3te/vIedUwc6erKZ03YQF/jd67dkoBLul frvw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to; bh=yHwq/ZUMX8pcALpkEyWwRYRkdvOejvoV/ZEmKzq02dg=; b=BnNjSiyG8XpemFdXY2SBq6FqSFbagXs1U9FGhR716HzysGdpuGNSoyKP/wRzjPCCAs ocwnygAC3kPQdNLIreEieX3QTR5auPr31rur9LMWRqH/jb7FWzKJk/dKLz+Aoqsi+hAI 5WGiBOLXSGHLWwmHgaZwzKuSwgsV9XltUUBOXMzEl3eYh3H/wYduBQjuzgbQYNgmBX3h Zs1w5caJwP95hLRYxxsSfSs5PLUm2mk+EAN2RN0+U1lCTy8WLP4bnc6jn35q4Fm97so8 seAj+LrOv2JHmHIcjbxJV6wNpJz0E2kWTaMUMDtJqlGX0lXoZX1l9L52ME7nqH/rp+PG C2TQ== X-Gm-Message-State: ALyK8tLtem/PfUq+NnDR6TK94/n0V/qcIuap0VchcSouRY6cvr5dR/2rVa/sEJAgE0+56VWWJqMGrlNgjR8LEA== X-Received: by 10.140.227.20 with SMTP id x20mr4553814qhb.9.1464975215113; Fri, 03 Jun 2016 10:33:35 -0700 (PDT) In-Reply-To: <87h9dali3f.fsf@web.de> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2607:f8b0:400d:c04::234 X-Content-Filtered-By: Mailman/MimeDel 2.1.21 X-BeenThere: guile-user@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: General Guile related discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guile-user-bounces+guile-user=m.gmane.org@gnu.org Original-Sender: "guile-user" Xref: news.gmane.org gmane.lisp.guile.user:12600 Archived-At: It's an interesting topic. Although I planed to share something when I earn more money, now that someone raised it... :-) Here I give you two real cases. The first one is that we use Guile to send command from UART to control a small robot. We made it in a sponsored hackathon. And earned the highest award in couple of hours, about $1500 (10,000 Chinese yuan). People never saw such a project, as the journalist wrote: "they ask the robot to write just 3 Chinese characters and get 10,000 yuan." It's an interesting story, I will write it in my blog. I wrote the prototype in Guile, but the hackathon day I have to go to church, and my friends encoutered problems, then someone have to rewrite it in Forth, or we may lost the chance in time. But the name of the project is lambda-tortoise, since it's in Scheme originally. Of course it's free project, and yes I wrote a thing to let Guile control serial port. But I haven't gotten time to release it. Here is the media report: http://m.leiphone.com/news/201510/Hk7mizNbynrIInam.html The second case is that I wrote a complete video multicasting system for a primary school. It's a serious business project, I spent lot of time to debug and deploy. The priciple is not complicated, there's server-side written in GNU Artanis (of course it's pure Guile Scheme) provided RESTful APIs, and more than 50 raspberryPI as client nodes (running some scripts to interact with the server), each node control a TV set. The operator could control nodes in groups, or monitor heartbeat, and even give command to it (shutdown or replay certain video). The old solution is very expensive for the school, and can not be scalable. I use Artanis for quick develop, and raspberryPI is cheap. So I helped them to solve the scalability problem, now if they want to add new node, just buy a raspberryPI, and flash a card with a customized system, connect to network, plug to the TV set, and just power it, it'll be recognized by server and push the latest video list. Very easy for them. Besides, my server is faster then their old solution which runs on Windows with dot net. They surprised that how my server can be so fast to upload 1G video in few seconds. And I surprised too, how can they endure such performance these years, 200M video they have to wait 10 minutes. For such a result all beyond their expectation. I get well paid, consider I just spent two days for programming(more time spent on debug and deploy), I think it's efficient to develop with Guile. Well, I can't reveal how much money for this project. But it's far more than the number of the award I mentioned in the first case. And unfortunately, they bought all the code, so I can't free it to you. I really want to persuade them to free it to make this project as a perfect case of free software. But it's high customized system to meet their specific need. They don't want to reveal it for many reasons. Anyway, Artanis become stronger after this real business project. I think it's the most important. And I have to say frankly, I can earn the money is not because I use Guile, but because I know how to solve the problem. Although the ability of solving problem is unrelated to the language, it's good for you to choose a good language for better develop experiences. Guile is a practical one in Scheme world. To my experience, Scheme is flexible enough when your code base increase, that is to say, you don't have to refactor frequently to meet your new needs, all the old part are easy to intergrate with your new code. For an Object-Oriented user, this may not surprise, but what if you drop your heavy object system and do the job in a light way? I think I'm the only one who refuse OO (yes, extreamly intended) in Scheme programming. I just want to see, to what extent, we may drop OO for same purpose in Scheme. OK, I confess I'm cheating, since I use the inheritance in record-type in r6rs. But it's the only cheating. :-) Arne Babenhauserheide =E4=BA=8E2016=E5=B9=B46=E6=9C=883=E6= =97=A5=E5=91=A8=E4=BA=94 17:47=E5=86=99=E9=81=93=EF=BC=9A > Hi, > > > =E2=80=9CI would take Guile seriously when someone earned money with it= .=E2=80=9D > > =E2=80=94 someone from IRC > > When I saw this on IRC, I realized that the there=E2=80=99s something to = it: > When a professional sees something new and is unsure whether it can be > useful to business, it=E2=80=99s sensible to first check whether someone = else > already earns money with it. That doesn=E2=80=99t work for the first pers= on, but > it works for all others. > > > So I want to ask you: Do you earn part of your income by programming > with Guile? > > > I=E2=80=99ll go first: I used Guile for a few tasks for my PhD thesis (wh= ich I > got paid for). > > The first main task was to assemble commandlines for my plotting tool > where my previous shell scripts became a maintenance nightmare. All in > all that=E2=80=99s about 300 lines of Guile Scheme. I=E2=80=99ll be using= Guile for this > again in the following months. > > The second main task was to build an Ensemble Kalman Filter to get a > deeper understanding of the method. That=E2=80=99s about 266 lines of Gui= le wisp > and available online: > > https://bitbucket.org/ArneBab/wisp/src/v0.9.0/examples/ensemble-estimatio= n.w > > > I=E2=80=99d be glad to hear how you earn money with Guile! > > > Best wishes, > Arne Babenhauserheide > > PS: Earning money with Free Software is awesome! > >