Re: [Elementary-dev-community] Congratulations Luna developers!

2013-08-21 Thread Alex Lourie
Albert

We don't need to exaggerate. Though TDD is, indeed, a development
methodology, it is not supposed to completely change the way everyone works.

Just consider that writing a good test takes about 10 minutes, and that
each developer writes one or two tests for new stuff they add (or the old
one they fix) from time to time. Then, in time, you'll have part of your
code tested, which is exactly what we're aiming for. Beginning is hard,
continue something is easier.

I have never heard a project die because they decided to move to TDD. And I
heard about lots of hits on the matter.


On Tue, Aug 20, 2013 at 3:37 AM, Albert Palacios optimi...@gmail.comwrote:

 Hi Craig,

 Thanks for your explanation and the linked video. I am still agnostic, but
 I don't want to be the only one who complained about the proposal.

 At this point I have more questions than answers, and those will probably
 be solved with a working example.

 But remember, *TDD is a development methodology* not a testing
 methodology. It will change our development work flow, and will probably
 move potential volunteers away from the project.

 TDD like every other development methodology does not fit every project or
 team. It can be a hit, and it can even the death of the project.

 Albert




 On Tue, Aug 20, 2013 at 12:50 AM, Craig webe...@gmail.com wrote:

 Hi Albert,

 Thanks for your response, you asked a lot of great questions. In addition
 to Gufran's earlier response.

  Can you prove that there will be huge benefits in time/resources?


 Well, that depends on what you consider proof. In the spring, my
 company paid several thousand dollars to send me to a conference in San
 Jose in which many software development authorities recited, test driven
 development pays itself off in iteration 0. That means the very first time
 you write the code it has already paid for itself (because even before you
 get the automatic-regression testing benefits, you've already got the
 benefits of a better architecture and documentation--because the tests
 _are_ the documentation!). I'm sure I can dig up lots of other resources,
 but I think it should suffice to say that I've never heard an expert
 comment on TDD except to say it's fastest way to develop quality software.
 For more information addressing your specific concerns, see the Wikipedia
 article's benefits section (and read on to the shortcomings as it is
 also relevant:
 http://en.wikipedia.org/wiki/Test-driven_development#Benefits. Even more
 importantly, this short video: http://www.youtube.com/watch?v=DodJQyHsmHI


 Can you prove that there will be less bugs? (looks like that if tests are
 not right, bugs will populate equally).

 It's pretty hard to write bad tests if you're practicing TDD, because you
 write the test first, watch it fail, insert the code you need to make it
 pass, and then hopefully watch it pass. If you wrote a bad test, it very
 probably will pass before you've written the code to make it pass (which
 serves to alert the programmer that his test is bad or his software is
 doing something unexpected) or the test will fail after he has correctly
 written the next line of code (which serves to alert the programmer to
 review both the code and his test and identify the source of the problem).
 For this reason alone, many, many bugs are eliminated.

 From what's been said, looks like there will be an extra effort on
 development, adding complexity and more tools to know (not to say maintain).

 Besides the initial learning curve, development actually goes _faster_
 with TDD (see the aforementioned Wikipedia article--I can provide more
 resources on demand) because debugging time becomes exponentially more
 expensive as time passes after the bug has been introduced. This is because
 the bug can live anywhere in any code that has been added *since the last
 time the tests were run* and because the programmer will have an
 increasingly difficult time remembering the code he wrote at the time of
 the bug as time progresses. With TDD, you are running the tests after every
 change (generally you test every time you build), so as soon as you've
 broken something you find out about it. This means that the bug is
 guaranteed to live in the last change you made, which is a smaller sample
 and fresher-in-your-mind than changes you made weeks ago. Regarding your
 complexity concern, generally the process isn't complex (it's actually very
 simple) and it _simplifies_ development once you learn how to do it. The
 most complex part is figuring out how to integrate testing into the CMake
 project, and that's only complicated because CMake is complicated.
 Regarding tools, there are already testing tools available for Vala,
 including GLib (so we don't have to maintain anything). Anyway, testing
 tools don't take a terribly long time to learn.

  Can we focus on the half done things before adding new projects? Granite
 is not ready, documentation is missing, not to talk about the bugs that

Re: [Elementary-dev-community] Congratulations Luna developers!

2013-08-21 Thread Craig
 I have never heard a project die because they decided to move to TDD. And
 I heard about lots of hits on the matter.


This. I've heard (and witnessed) a lot of projects drop their defect
percentage from 20% to 3%.  A lot of new-to-TDD developers don't like it at
first because it feels slower, but I don't think those people remember how
much time is spent bug hunting at the end of a release cycle.

I think the next step is to find a pilot project and get the lead
developer(s) to agree to work toward TDD. This will probably look like:

1) Modifying the project structure to include _test directories
2) Creating tests with GLib.Test or some such
3) Coaching/mentoring the developers at TDD
4) Performing code reviews in which insufficiently tested code is sent back
for revision

After testing it out for a few months, the community can see how they like
it.

Does this sound like a reasonable approach? If so, would any project leads
like to volunteer their project? And who in the community would like to
participate in such an experiment?


On Wed, Aug 21, 2013 at 4:34 AM, Alex Lourie djay...@gmail.com wrote:

 Albert

 We don't need to exaggerate. Though TDD is, indeed, a development
 methodology, it is not supposed to completely change the way everyone works.

 Just consider that writing a good test takes about 10 minutes, and that
 each developer writes one or two tests for new stuff they add (or the old
 one they fix) from time to time. Then, in time, you'll have part of your
 code tested, which is exactly what we're aiming for. Beginning is hard,
 continue something is easier.

 I have never heard a project die because they decided to move to TDD. And
 I heard about lots of hits on the matter.


 On Tue, Aug 20, 2013 at 3:37 AM, Albert Palacios optimi...@gmail.comwrote:

 Hi Craig,

 Thanks for your explanation and the linked video. I am still agnostic,
 but I don't want to be the only one who complained about the proposal.

 At this point I have more questions than answers, and those will probably
 be solved with a working example.

 But remember, *TDD is a development methodology* not a testing
 methodology. It will change our development work flow, and will probably
 move potential volunteers away from the project.

 TDD like every other development methodology does not fit every project
 or team. It can be a hit, and it can even the death of the project.

 Albert




 On Tue, Aug 20, 2013 at 12:50 AM, Craig webe...@gmail.com wrote:

 Hi Albert,

 Thanks for your response, you asked a lot of great questions. In
 addition to Gufran's earlier response.

  Can you prove that there will be huge benefits in time/resources?


 Well, that depends on what you consider proof. In the spring, my
 company paid several thousand dollars to send me to a conference in San
 Jose in which many software development authorities recited, test driven
 development pays itself off in iteration 0. That means the very first time
 you write the code it has already paid for itself (because even before you
 get the automatic-regression testing benefits, you've already got the
 benefits of a better architecture and documentation--because the tests
 _are_ the documentation!). I'm sure I can dig up lots of other resources,
 but I think it should suffice to say that I've never heard an expert
 comment on TDD except to say it's fastest way to develop quality software.
 For more information addressing your specific concerns, see the Wikipedia
 article's benefits section (and read on to the shortcomings as it is
 also relevant:
 http://en.wikipedia.org/wiki/Test-driven_development#Benefits. Even
 more importantly, this short video:
 http://www.youtube.com/watch?v=DodJQyHsmHI


 Can you prove that there will be less bugs? (looks like that if tests
 are not right, bugs will populate equally).

 It's pretty hard to write bad tests if you're practicing TDD, because
 you write the test first, watch it fail, insert the code you need to make
 it pass, and then hopefully watch it pass. If you wrote a bad test, it very
 probably will pass before you've written the code to make it pass (which
 serves to alert the programmer that his test is bad or his software is
 doing something unexpected) or the test will fail after he has correctly
 written the next line of code (which serves to alert the programmer to
 review both the code and his test and identify the source of the problem).
 For this reason alone, many, many bugs are eliminated.

 From what's been said, looks like there will be an extra effort on
 development, adding complexity and more tools to know (not to say 
 maintain).

 Besides the initial learning curve, development actually goes _faster_
 with TDD (see the aforementioned Wikipedia article--I can provide more
 resources on demand) because debugging time becomes exponentially more
 expensive as time passes after the bug has been introduced. This is because
 the bug can live anywhere in any code that has been added *since the last
 time 

Re: [Elementary-dev-community] Congratulations Luna developers!

2013-08-21 Thread Julien
So if I'm not mistaken, TDD requires you to write tests before 
implementing something.


This might work well for teams with enough developers that don't have 
to rely on volunteers and drive-by contributors, but I don't see this 
working out for elementary, at least not at this point.


Many contributors fix a few small bugs here and there and don't have 
much experience with development, which is why we try to keep the entry 
barrier really low for new devs. When I started here, I had no 
experience with Vala, Gtk and Launchpad at all, and I just fixed some 
easy bugs, implemented some small features in various apps and so on.


If we used TDD, we would have to reject most code by new devs, because 
they didn't implement tests, and then we'll have to explain to them how 
to use tests, and then they'll have to write tests, but that's bad 
because you have to write them before you write the actual code ...


It's going to be a mess.

What might work are regular unit tests, implemented by people who kind 
of know what they're doing (we need some documentation for that, maybe 
add it to the dev guide). This will give us some of the TDD benefits 
w/o deterring potential new devs.


On Wed, Aug 21, 2013 at 3:29 PM, Craig webe...@gmail.com wrote:


I have never heard a project die because they decided to move to 
TDD. And I heard about lots of hits on the matter.


This. I've heard (and witnessed) a lot of projects drop their defect 
percentage from 20% to 3%.  A lot of new-to-TDD developers don't 
like it at first because it feels slower, but I don't think those 
people remember how much time is spent bug hunting at the end of a 
release cycle.


I think the next step is to find a pilot project and get the lead 
developer(s) to agree to work toward TDD. This will probably look 
like:


1) Modifying the project structure to include _test directories
2) Creating tests with GLib.Test or some such
3) Coaching/mentoring the developers at TDD
4) Performing code reviews in which insufficiently tested code is 
sent back for revision


After testing it out for a few months, the community can see how they 
like it.


Does this sound like a reasonable approach? If so, would any project 
leads like to volunteer their project? And who in the community would 
like to participate in such an experiment?



On Wed, Aug 21, 2013 at 4:34 AM, Alex Lourie djay...@gmail.com 
wrote:

Albert

We don't need to exaggerate. Though TDD is, indeed, a development 
methodology, it is not supposed to completely change the way 
everyone works.


Just consider that writing a good test takes about 10 minutes, and 
that each developer writes one or two tests for new stuff they add 
(or the old one they fix) from time to time. Then, in time, you'll 
have part of your code tested, which is exactly what we're aiming 
for. Beginning is hard, continue something is easier.


I have never heard a project die because they decided to move to 
TDD. And I heard about lots of hits on the matter.



On Tue, Aug 20, 2013 at 3:37 AM, Albert Palacios 
optimi...@gmail.com wrote:

Hi Craig,

Thanks for your explanation and the linked video. I am still 
agnostic, but I don't want to be the only one who complained about 
the proposal. 


At this point I have more questions than answers, and those will 
probably be solved with a working example.


But remember, TDD is a development methodology not a testing 
methodology. It will change our development work flow, and will 
probably move potential volunteers away from the project. 


TDD like every other development methodology does not fit every 
project or team. It can be a hit, and it can even the death of the 
project.


Albert




On Tue, Aug 20, 2013 at 12:50 AM, Craig webe...@gmail.com wrote:

Hi Albert,

Thanks for your response, you asked a lot of great questions. In 
addition to Gufran's earlier response.


 Can you prove that there will be huge benefits in 
time/resources?


Well, that depends on what you consider proof. In the spring, my 
company paid several thousand dollars to send me to a conference 
in San Jose in which many software development authorities 
recited, test driven development pays itself off in iteration 0. 
That means the very first time you write the code it has already 
paid for itself (because even before you get the 
automatic-regression testing benefits, you've already got the 
benefits of a better architecture and documentation--because the 
tests _are_ the documentation!). I'm sure I can dig up lots of 
other resources, but I think it should suffice to say that I've 
never heard an expert comment on TDD except to say it's fastest 
way to develop quality software. For more information addressing 
your specific concerns, see the Wikipedia article's benefits 
section (and read on to the shortcomings as it is also 
relevant: http://en.wikipedia.org/wiki/Test-driven_development#Benefits. 
Even more importantly, this short 
video: http://www.youtube.com/watch?v=DodJQyHsmHI



Can you 

Re: [Elementary-dev-community] Congratulations Luna developers!

2013-08-21 Thread Craig
Hmm, that's a good point. While the barrier to entry is very high right
now, we could move some of that difficulty from things like simple
installation (I can't remember the last time following the installation
instructions yielded a successful build/install) to things that help
improve our quality. If it has to be hard it may as well be hard for a
reason.

Anyway, even if we do reject a bug fix for lack of testing, at least the
hard work of finding the bug is done for us. From there, we can use the
opportunity to teach the submitter how to test or, in the worst case, write
the test ourselves and implement the fix (since the rejected fix points is
to the cause of the bug).

I'm sure there will be some complications in practice, but it will move us
a step closer to quality and it will allow us to focus on implementing new
features rather than bug hunting. That might be enough in its own right to
attract developers (and likely talented ones at that!).
Agree with Julian. TDD is best suited when the software is developed using
agile development methodology. For something like elementary os, which is
community driven, TDD might not be practical. But writing test cases is a
must I believe. That way with regression testing it might make debugging
new bugs, which occurs when new features are added will get a lot easier.


On Wed, Aug 21, 2013 at 9:45 PM, Julien spautz.jul...@gmail.com wrote:

 So if I'm not mistaken, TDD requires you to write tests *before*implementing 
 something.

 This might work well for teams with enough developers that don't have to
 rely on volunteers and drive-by contributors, but I don't see this working
 out for elementary, at least not at this point.

 Many contributors fix a few small bugs here and there and don't have much
 experience with development, which is why we try to keep the entry barrier
 really low for new devs. When I started here, I had no experience with
 Vala, Gtk and Launchpad at all, and I just fixed some easy bugs,
 implemented some small features in various apps and so on.

 If we used TDD, we would have to reject most code by new devs, because
 they didn't implement tests, and then we'll have to explain to them how to
 use tests, and then they'll have to write tests, but that's bad because you
 have to write them before you write the actual code ...

 It's going to be a mess.

 What might work are regular unit tests, implemented by people who kind of
 know what they're doing (we need some documentation for that, maybe add it
 to the dev guide). This will give us some of the TDD benefits w/o deterring
 potential new devs.

 On Wed, Aug 21, 2013 at 3:29 PM, Craig webe...@gmail.com wrote:


 I have never heard a project die because they decided to move to TDD. And
 I heard about lots of hits on the matter.


 This. I've heard (and witnessed) a lot of projects drop their defect
 percentage from 20% to 3%.  A lot of new-to-TDD developers don't like it at
 first because it feels slower, but I don't think those people remember how
 much time is spent bug hunting at the end of a release cycle.

 I think the next step is to find a pilot project and get the lead
 developer(s) to agree to work toward TDD. This will probably look like:

 1) Modifying the project structure to include _test directories
 2) Creating tests with GLib.Test or some such
 3) Coaching/mentoring the developers at TDD
 4) Performing code reviews in which insufficiently tested code is sent
 back for revision

 After testing it out for a few months, the community can see how they like
 it.

 Does this sound like a reasonable approach? If so, would any project leads
 like to volunteer their project? And who in the community would like to
 participate in such an experiment?


 On Wed, Aug 21, 2013 at 4:34 AM, Alex Lourie djay...@gmail.com wrote:

 Albert

 We don't need to exaggerate. Though TDD is, indeed, a development
 methodology, it is not supposed to completely change the way everyone works.

 Just consider that writing a good test takes about 10 minutes, and that
 each developer writes one or two tests for new stuff they add (or the old
 one they fix) from time to time. Then, in time, you'll have part of your
 code tested, which is exactly what we're aiming for. Beginning is hard,
 continue something is easier.

 I have never heard a project die because they decided to move to TDD. And
 I heard about lots of hits on the matter.


 On Tue, Aug 20, 2013 at 3:37 AM, Albert Palacios optimi...@gmail.comwrote:

 Hi Craig,

 Thanks for your explanation and the linked video. I am still agnostic,
 but I don't want to be the only one who complained about the proposal.

 At this point I have more questions than answers, and those will
 probably be solved with a working example.

 But remember, *TDD is a development methodology* not a testing
 methodology. It will change our development work flow, and will probably
 move potential volunteers away from the project.

 TDD like every other development methodology 

[Elementary-dev-community] I Distributed elementary on the street :)

2013-08-21 Thread Gufran
Hello guys and Girls,

First of all I'd mention that here in my
society/locality/streets/region/state linux is not quite popular (Hell,
some people doesn't even know what a linux is!), so I went out and told
them an evening :)

Two days ago I burnt 10 CD of luna and wrapped them in an envelop with two
papers in it, First one was having instructions on how to boot with this CD
and try out the live session without messing up with your computer, Full
Installation instructions if you like the deal and my email address just in
case someone need any help.
And the second paper, well, that was about why windows sucks and why you
should immediately ditch it (*No, I'm not sorry*).

Then I went out and start looking for people who potentially owns a
computer, well, you can easily find out by their backpack, job ID cards,
gadgets and things like that, and it really doesn't hurt either if you ask
politely. anyways, I managed to convince 10 peoples to at least try this '*
thing*' and handed them the CDs I had.

It was fun explaining about Elementary and how awesome it is, so after
coming back to home I burnt another 25 CDs and the same thing another day.

and today I distributed another 12 CDs and till now I've got a lot of
emails from people saying thanks. Some of them asked for a little help as
well to which I replied promptly.

All in all, It was an awesome venture and I guess I'm gonna get out again
tomorrow and find out some more guys for another 8 CDs I have here with me.

And I think you too can do it, anywhere, anytime and with anyone you like :D
-- 
Mailing list: https://launchpad.net/~elementary-dev-community
Post to : elementary-dev-community@lists.launchpad.net
Unsubscribe : https://launchpad.net/~elementary-dev-community
More help   : https://help.launchpad.net/ListHelp


Re: [Elementary-dev-community] I Distributed elementary on the street :)

2013-08-21 Thread David Gomes
Hi,

You should totally record or take pictures of people and make a blog post
somewhere about this (perhaps elementaryupdate), it's great PR for us and
it was an awesome idea!

Thank you and good job!

~David Munchor Gomes


On Wed, Aug 21, 2013 at 8:39 PM, Gufran dogab...@gmail.com wrote:

 Hello guys and Girls,

 First of all I'd mention that here in my
 society/locality/streets/region/state linux is not quite popular (Hell,
 some people doesn't even know what a linux is!), so I went out and told
 them an evening :)

 Two days ago I burnt 10 CD of luna and wrapped them in an envelop with two
 papers in it, First one was having instructions on how to boot with this CD
 and try out the live session without messing up with your computer, Full
 Installation instructions if you like the deal and my email address just in
 case someone need any help.
 And the second paper, well, that was about why windows sucks and why you
 should immediately ditch it (*No, I'm not sorry*).

 Then I went out and start looking for people who potentially owns a
 computer, well, you can easily find out by their backpack, job ID cards,
 gadgets and things like that, and it really doesn't hurt either if you ask
 politely. anyways, I managed to convince 10 peoples to at least try this '
 *thing*' and handed them the CDs I had.

 It was fun explaining about Elementary and how awesome it is, so after
 coming back to home I burnt another 25 CDs and the same thing another day.

 and today I distributed another 12 CDs and till now I've got a lot of
 emails from people saying thanks. Some of them asked for a little help as
 well to which I replied promptly.

 All in all, It was an awesome venture and I guess I'm gonna get out again
 tomorrow and find out some more guys for another 8 CDs I have here with me.

 And I think you too can do it, anywhere, anytime and with anyone you like
 :D

 --
 Mailing list: https://launchpad.net/~elementary-dev-community
 Post to : elementary-dev-community@lists.launchpad.net
 Unsubscribe : https://launchpad.net/~elementary-dev-community
 More help   : https://help.launchpad.net/ListHelp


-- 
Mailing list: https://launchpad.net/~elementary-dev-community
Post to : elementary-dev-community@lists.launchpad.net
Unsubscribe : https://launchpad.net/~elementary-dev-community
More help   : https://help.launchpad.net/ListHelp


Re: [Elementary-dev-community] I Distributed elementary on the street :)

2013-08-21 Thread Alfredo Hernández
Hi,

I really appreciate and admire your efforts on spreading the Linux word.
Keep on, man!

Cheers.
On 21 Aug 2013 21:39, Gufran dogab...@gmail.com wrote:

 Hello guys and Girls,

 First of all I'd mention that here in my
 society/locality/streets/region/state linux is not quite popular (Hell,
 some people doesn't even know what a linux is!), so I went out and told
 them an evening :)

 Two days ago I burnt 10 CD of luna and wrapped them in an envelop with two
 papers in it, First one was having instructions on how to boot with this CD
 and try out the live session without messing up with your computer, Full
 Installation instructions if you like the deal and my email address just in
 case someone need any help.
 And the second paper, well, that was about why windows sucks and why you
 should immediately ditch it (*No, I'm not sorry*).

 Then I went out and start looking for people who potentially owns a
 computer, well, you can easily find out by their backpack, job ID cards,
 gadgets and things like that, and it really doesn't hurt either if you ask
 politely. anyways, I managed to convince 10 peoples to at least try this '
 *thing*' and handed them the CDs I had.

 It was fun explaining about Elementary and how awesome it is, so after
 coming back to home I burnt another 25 CDs and the same thing another day.

 and today I distributed another 12 CDs and till now I've got a lot of
 emails from people saying thanks. Some of them asked for a little help as
 well to which I replied promptly.

 All in all, It was an awesome venture and I guess I'm gonna get out again
 tomorrow and find out some more guys for another 8 CDs I have here with me.

 And I think you too can do it, anywhere, anytime and with anyone you like
 :D

 --
 Mailing list: https://launchpad.net/~elementary-dev-community
 Post to : elementary-dev-community@lists.launchpad.net
 Unsubscribe : https://launchpad.net/~elementary-dev-community
 More help   : https://help.launchpad.net/ListHelp


-- 
Mailing list: https://launchpad.net/~elementary-dev-community
Post to : elementary-dev-community@lists.launchpad.net
Unsubscribe : https://launchpad.net/~elementary-dev-community
More help   : https://help.launchpad.net/ListHelp


Re: [Elementary-dev-community] I Distributed elementary on the street :)

2013-08-21 Thread A. Xylon V.
Haha, I'm not sure a 13 year old giving out CD's in to a community of
mostly pensioners will work out :D

Besides, I literally don't know anyone on my street, not even names or what
they even look like.

I do, however, encourage my friend/s to use it
On Aug 21, 2013 9:06 PM, Gufran dogab...@gmail.com wrote:

 Hey Xylon,
 Why not just *'Try It Out'* ?
 I was not serious at first either but people out there are awesome.
 And most of all, getting back emails and all sort of good words is an
 awesome feeling :)


 On Thu, Aug 22, 2013 at 1:19 AM, A. Xylon V. avlabs...@gmail.comwrote:

 This is absolutely awesome. I would do exactly the same thing if I was
 actually old enough to be taken seriously or if I knew anyone in my
 community XD

 On Aug 21, 2013 8:41 PM, David Gomes da...@elementaryos.org wrote:
 
  Hi,
 
  You should totally record or take pictures of people and make a blog
 post somewhere about this (perhaps elementaryupdate), it's great PR for us
 and it was an awesome idea!
 
  Thank you and good job!
 
  ~David Munchor Gomes
 
 
  On Wed, Aug 21, 2013 at 8:39 PM, Gufran dogab...@gmail.com wrote:
 
  Hello guys and Girls,
 
  First of all I'd mention that here in my
 society/locality/streets/region/state linux is not quite popular (Hell,
 some people doesn't even know what a linux is!), so I went out and told
 them an evening :)
 
  Two days ago I burnt 10 CD of luna and wrapped them in an envelop with
 two papers in it, First one was having instructions on how to boot with
 this CD and try out the live session without messing up with your computer,
 Full Installation instructions if you like the deal and my email address
 just in case someone need any help.
  And the second paper, well, that was about why windows sucks and why
 you should immediately ditch it (No, I'm not sorry).
 
  Then I went out and start looking for people who potentially owns a
 computer, well, you can easily find out by their backpack, job ID cards,
 gadgets and things like that, and it really doesn't hurt either if you ask
 politely. anyways, I managed to convince 10 peoples to at least try this
 'thing' and handed them the CDs I had.
 
  It was fun explaining about Elementary and how awesome it is, so after
 coming back to home I burnt another 25 CDs and the same thing another day.
 
  and today I distributed another 12 CDs and till now I've got a lot of
 emails from people saying thanks. Some of them asked for a little help as
 well to which I replied promptly.
 
  All in all, It was an awesome venture and I guess I'm gonna get out
 again tomorrow and find out some more guys for another 8 CDs I have here
 with me.
 
  And I think you too can do it, anywhere, anytime and with anyone you
 like :D
 
  --
  Mailing list: https://launchpad.net/~elementary-dev-community
  Post to : elementary-dev-community@lists.launchpad.net
  Unsubscribe : https://launchpad.net/~elementary-dev-community
  More help   : https://help.launchpad.net/ListHelp
 
 
 
  --
  Mailing list: https://launchpad.net/~elementary-dev-community
  Post to : elementary-dev-community@lists.launchpad.net
  Unsubscribe : https://launchpad.net/~elementary-dev-community
  More help   : https://help.launchpad.net/ListHelp
 



-- 
Mailing list: https://launchpad.net/~elementary-dev-community
Post to : elementary-dev-community@lists.launchpad.net
Unsubscribe : https://launchpad.net/~elementary-dev-community
More help   : https://help.launchpad.net/ListHelp


Re: [Elementary-dev-community] Congratulations Luna developers!

2013-08-21 Thread Jakob Eriksson
But yes, GUI automatic tests are notoriously much harder to automate
fully, but you can often test a basic level automatically.



On 2013-08-21 22:54, Jaap Broekhuizen wrote:
 You can do that using behaviour driven testing tools. For example in python
 webdevelopment I use pytest and pytest-bdd in combination with splinter and
 Firefox.
 

-- 
Mailing list: https://launchpad.net/~elementary-dev-community
Post to : elementary-dev-community@lists.launchpad.net
Unsubscribe : https://launchpad.net/~elementary-dev-community
More help   : https://help.launchpad.net/ListHelp


Re: [Elementary-dev-community] Other languages? (Was Re: Congratulations Luna developers!)

2013-08-21 Thread A. Xylon V.
The thing about vala is that its simple enough to learn, but is still very
powerful and is extremely fast. The best thing is that it was made for Gtk,
which is perfect for elementary.

More languages would mean that we wouldn't have unity across the
applications - I do however, think that this would attract developers,
especially since vala does not have very good tutorials, or books.
On Aug 21, 2013 9:54 PM, Jakob Eriksson ja...@aurorasystems.eu wrote:

 On 2013-08-21 22:35, Kurt Smolderen wrote:

  look at the code. As Vala is currently missing a decent IDE (such as
  Eclipse,...) and debugging isn't as easy due to the fact the code is
  translated into C, its often very difficult to analyse the flow of a
  program. Available tests might help this initial contributors with


 And when will it be blessed to create Elementary apps in another
 language than Vala? If Elementary would open up to other languages,
 we could REALLY see increased productivity and more contributors.
 IMHO Objective C, C++ and maybe even Java via GCJ would be the obvious
 candidates.

 --jakob


 --
 Mailing list: https://launchpad.net/~elementary-dev-community
 Post to : elementary-dev-community@lists.launchpad.net
 Unsubscribe : https://launchpad.net/~elementary-dev-community
 More help   : https://help.launchpad.net/ListHelp

-- 
Mailing list: https://launchpad.net/~elementary-dev-community
Post to : elementary-dev-community@lists.launchpad.net
Unsubscribe : https://launchpad.net/~elementary-dev-community
More help   : https://help.launchpad.net/ListHelp


Re: [Elementary-dev-community] Other languages? (Was Re: Congratulations Luna developers!)

2013-08-21 Thread Daniel Foré
You can do whatever you like in your own 3rd party app, but we want everything 
shipped on the disc to be in Vala to lower the barrier of entry for 
contributors and to make development easier for ourselves as well.

—
Sent from Mailbox for iPhone

On Wed, Aug 21, 2013 at 2:03 PM, Albert Palacios Jimenez
optimi...@gmail.com wrote:

 In my opinion blessing other languages will create fragmentation. Developers 
 from one application won't be able to help other applications because of the 
 different language. We have a lot of examples, pantheon-files is one of them 
 but also external libraries that doesn't really fit.
 On Aug 21, 2013, at 10:54 PM, Jakob Eriksson ja...@aurorasystems.eu wrote:
 On 2013-08-21 22:35, Kurt Smolderen wrote:
 
 look at the code. As Vala is currently missing a decent IDE (such as
 Eclipse,...) and debugging isn't as easy due to the fact the code is
 translated into C, its often very difficult to analyse the flow of a
 program. Available tests might help this initial contributors with
 
 
 And when will it be blessed to create Elementary apps in another
 language than Vala? If Elementary would open up to other languages,
 we could REALLY see increased productivity and more contributors.
 IMHO Objective C, C++ and maybe even Java via GCJ would be the obvious
 candidates.
 
 --jakob
 
 
 -- 
 Mailing list: https://launchpad.net/~elementary-dev-community
 Post to : elementary-dev-community@lists.launchpad.net
 Unsubscribe : https://launchpad.net/~elementary-dev-community
 More help   : https://help.launchpad.net/ListHelp
 -- 
 Mailing list: https://launchpad.net/~elementary-dev-community
 Post to : elementary-dev-community@lists.launchpad.net
 Unsubscribe : https://launchpad.net/~elementary-dev-community
 More help   : https://help.launchpad.net/ListHelp-- 
Mailing list: https://launchpad.net/~elementary-dev-community
Post to : elementary-dev-community@lists.launchpad.net
Unsubscribe : https://launchpad.net/~elementary-dev-community
More help   : https://help.launchpad.net/ListHelp


Re: [Elementary-dev-community] Other languages? (Was Re: Congratulations Luna developers!)

2013-08-21 Thread A. Xylon V.
Like Dan said, you can write 3rd party applications in whatever language,
but core elementary apps will use vala
On Aug 21, 2013 10:20 PM, Albert Palacios Jimenez optimi...@gmail.com
wrote:


 You can find non Vala applications at the software center, you can sell
 applications written in whatever language as long as they run properly.

 It is just that you application won't benefit of the Elementary + Granite
 + Vala ecosystem. It will probably look ugly and less appealing to your
 potential customers.







 On Aug 21, 2013, at 11:14 PM, Jakob Eriksson ja...@aurorasystems.eu
 wrote:

  On 2013-08-21 22:59, A. Xylon V. wrote:
  The thing about vala is that its simple enough to learn, but is still
 very
  powerful and is extremely fast. The best thing is that it was made for
 Gtk,
  which is perfect for elementary.
 
  More languages would mean that we wouldn't have unity across the
  applications - I do however, think that this would attract developers,
  especially since vala does not have very good tutorials, or books.
 
  That is an understatement. Not having support for other languages is
  sort of insane.
 
  Scenario:
 
  I am a developer. I develop an application for Windows and, against
  commercial reason, make a Linux version of it too. It's coded in a mix
  of C++ and Python.
 
  I think Elementary is just fantastic, so just out of love I want to make
  my Linux app an Elementary version. I read the HIG and love it.
 
  Then I go to http://elementaryos.org/docs/code on the FIRST page I read:
 
  If you're not familiar with Vala, we highly encourage you to brush up
  on it before coming here.
 
  Sorry say what? No, not going to happen. I can't redo my app in Vala,
  even if I wanted to, because that means I can't run it on Windows. (Or
  OSX, or iOS.)
 
 
  The dev page should read something like for Elementary core apps we use
  Vala as a programming language. If you want to create your own
  Elementary apps, we encourage you to try out Vala, which is a fantastic
  language. If you want to use another language, that's fine too. Here are
  example Hello World Elementary apps written in C++, Objective C, Python
  and Ruby.
 
 
  --jakob
 
  --
  Mailing list: https://launchpad.net/~elementary-dev-community
  Post to : elementary-dev-community@lists.launchpad.net
  Unsubscribe : https://launchpad.net/~elementary-dev-community
  More help   : https://help.launchpad.net/ListHelp


 --
 Mailing list: https://launchpad.net/~elementary-dev-community
 Post to : elementary-dev-community@lists.launchpad.net
 Unsubscribe : https://launchpad.net/~elementary-dev-community
 More help   : https://help.launchpad.net/ListHelp

-- 
Mailing list: https://launchpad.net/~elementary-dev-community
Post to : elementary-dev-community@lists.launchpad.net
Unsubscribe : https://launchpad.net/~elementary-dev-community
More help   : https://help.launchpad.net/ListHelp


Re: [Elementary-dev-community] Other languages? (Was Re: Congratulations Luna developers!)

2013-08-21 Thread Jakob Eriksson
On 2013-08-21 23:20, Albert Palacios Jimenez wrote:
 
 You can find non Vala applications at the software center, you can sell 
 applications written in whatever language as long as they run properly.
 
 It is just that you application won't benefit of the Elementary + Granite + 
 Vala ecosystem. It will probably look ugly and less appealing to your 
 potential customers.
 


Is the mission to spread Vala or Elementary?
As long as apps with the Elementary feeling can only be done in Vala,
few third party developers will catch the train.

Also what is properly? Will apps with substandard and ugly behaviour
which does not follow the HIG be allowed in the software center?

--jakob


-- 
Mailing list: https://launchpad.net/~elementary-dev-community
Post to : elementary-dev-community@lists.launchpad.net
Unsubscribe : https://launchpad.net/~elementary-dev-community
More help   : https://help.launchpad.net/ListHelp


Re: [Elementary-dev-community] Other languages? (Was Re: Congratulations Luna developers!)

2013-08-21 Thread Jakob Eriksson
Then there is an education / PR problem on the elementary.org page.

It should be made clear how to make a HIG compliant app in any (where
any=C++, hehe) language.



On 2013-08-21 23:32, Albert Palacios Jimenez wrote:
 
 I think there are some misunderstandings:
 
 - The HIG is a must for core elementary OS applications but a recommendation 
 for third party ones.
 
 - If you develop your application using a Model/View/Controller schema, it 
 will be easy to make it look like an elementary OS just changing the View and 
 leaving the original sources for Models and Controllers.
 
 This is why a lot of applications work across different systems, they get the 
 view/look from the core libraries and work with a non core language.
 
 This is an appropriate way of developing applications, it works well not only 
 for Linux but also for OSX, Windows, iOS, Android, ...
 


-- 
Mailing list: https://launchpad.net/~elementary-dev-community
Post to : elementary-dev-community@lists.launchpad.net
Unsubscribe : https://launchpad.net/~elementary-dev-community
More help   : https://help.launchpad.net/ListHelp


Re: [Elementary-dev-community] Congratulations Luna developers!

2013-08-21 Thread Kurt Smolderen
What do you think of giving Footnote some love? I think it is currently 
unmaintained (need to verify that), it's conceptually a rather simple 
application but offers a good set of practices for TDD/ writing tests.

We need to verify first of course what the intentions of the current owner are, 
but I would personally like to see a new version of Footnote...

Craig webe...@gmail.com wrote:
 I have never heard a project die because they decided to move to TDD.
And
 I heard about lots of hits on the matter.


This. I've heard (and witnessed) a lot of projects drop their defect
percentage from 20% to 3%.  A lot of new-to-TDD developers don't like
it at
first because it feels slower, but I don't think those people remember
how
much time is spent bug hunting at the end of a release cycle.

I think the next step is to find a pilot project and get the lead
developer(s) to agree to work toward TDD. This will probably look like:

1) Modifying the project structure to include _test directories
2) Creating tests with GLib.Test or some such
3) Coaching/mentoring the developers at TDD
4) Performing code reviews in which insufficiently tested code is sent
back
for revision

After testing it out for a few months, the community can see how they
like
it.

Does this sound like a reasonable approach? If so, would any project
leads
like to volunteer their project? And who in the community would like to
participate in such an experiment?


On Wed, Aug 21, 2013 at 4:34 AM, Alex Lourie djay...@gmail.com wrote:

 Albert

 We don't need to exaggerate. Though TDD is, indeed, a development
 methodology, it is not supposed to completely change the way everyone
works.

 Just consider that writing a good test takes about 10 minutes, and
that
 each developer writes one or two tests for new stuff they add (or the
old
 one they fix) from time to time. Then, in time, you'll have part of
your
 code tested, which is exactly what we're aiming for. Beginning is
hard,
 continue something is easier.

 I have never heard a project die because they decided to move to TDD.
And
 I heard about lots of hits on the matter.


 On Tue, Aug 20, 2013 at 3:37 AM, Albert Palacios
optimi...@gmail.comwrote:

 Hi Craig,

 Thanks for your explanation and the linked video. I am still
agnostic,
 but I don't want to be the only one who complained about the
proposal.

 At this point I have more questions than answers, and those will
probably
 be solved with a working example.

 But remember, *TDD is a development methodology* not a testing
 methodology. It will change our development work flow, and will
probably
 move potential volunteers away from the project.

 TDD like every other development methodology does not fit every
project
 or team. It can be a hit, and it can even the death of the project.

 Albert




 On Tue, Aug 20, 2013 at 12:50 AM, Craig webe...@gmail.com wrote:

 Hi Albert,

 Thanks for your response, you asked a lot of great questions. In
 addition to Gufran's earlier response.

  Can you prove that there will be huge benefits in time/resources?


 Well, that depends on what you consider proof. In the spring, my
 company paid several thousand dollars to send me to a conference in
San
 Jose in which many software development authorities recited, test
driven
 development pays itself off in iteration 0. That means the very
first time
 you write the code it has already paid for itself (because even
before you
 get the automatic-regression testing benefits, you've already got
the
 benefits of a better architecture and documentation--because the
tests
 _are_ the documentation!). I'm sure I can dig up lots of other
resources,
 but I think it should suffice to say that I've never heard an
expert
 comment on TDD except to say it's fastest way to develop quality
software.
 For more information addressing your specific concerns, see the
Wikipedia
 article's benefits section (and read on to the shortcomings as
it is
 also relevant:
 http://en.wikipedia.org/wiki/Test-driven_development#Benefits. Even
 more importantly, this short video:
 http://www.youtube.com/watch?v=DodJQyHsmHI


 Can you prove that there will be less bugs? (looks like that if
tests
 are not right, bugs will populate equally).

 It's pretty hard to write bad tests if you're practicing TDD,
because
 you write the test first, watch it fail, insert the code you need
to make
 it pass, and then hopefully watch it pass. If you wrote a bad test,
it very
 probably will pass before you've written the code to make it pass
(which
 serves to alert the programmer that his test is bad or his software
is
 doing something unexpected) or the test will fail after he has
correctly
 written the next line of code (which serves to alert the programmer
to
 review both the code and his test and identify the source of the
problem).
 For this reason alone, many, many bugs are eliminated.

 From what's been said, looks like there will be an extra effort on
 development, adding complexity and more tools to know (not 

Re: [Elementary-dev-community] Other languages? (Was Re: Congratulations Luna developers!)

2013-08-21 Thread Albert Palacios Jimenez
Hi Jakob,

This is a project worked by volunteers, who are developing other things that 
are more needed right now. Such as a site showing how to fix bugs and 
collaborate with them, or a tutorial on how to develop Vala applications for 
elementary OS.

If you want to contribute, you are welcome to make a proposal of a tutorial 
about Vala bindings to other languages, and how to easily port applications 
using Vala bindings. I am sure the elementary OS team (and the GTK community) 
will be very happy.

Elementary OS is just making a realistic decision choosing one language and 
defining the HIG. This is how great projects grow, and how they stand to their 
principles. 

We would love if you understand that some decisions are just for the good of 
the project and its users.




On Aug 21, 2013, at 11:47 PM, Jaap Broekhuizen jaap...@gmail.com wrote:

 So you want us to document how to build a elementary style app in any 
 possible language? Thanks but no thanks. IMHO we should provide generic goals 
 and guidelines as to how an application should work and what it should look 
 like, and preferably describe a set of tools with which you could achieve 
 that. Vala is just the tool elementary agreed upon to use for core apps, and 
 it makes sense to use that knowledge to also create third party apps. If you 
 prefer to use different tools for third party apps, that's entirely OK. But 
 it makes no sense to try to document any possible tool with which you could 
 make an elementary style app.
 
 --
 Jaap
 
 
 On Wed, Aug 21, 2013 at 11:39 PM, Jakob Eriksson ja...@aurorasystems.eu 
 wrote:
 Then there is an education / PR problem on the elementary.org page.
 
 It should be made clear how to make a HIG compliant app in any (where
 any=C++, hehe) language.
 
 
 
 On 2013-08-21 23:32, Albert Palacios Jimenez wrote:
 
  I think there are some misunderstandings:
 
  - The HIG is a must for core elementary OS applications but a 
  recommendation for third party ones.
 
  - If you develop your application using a Model/View/Controller schema, it 
  will be easy to make it look like an elementary OS just changing the View 
  and leaving the original sources for Models and Controllers.
 
  This is why a lot of applications work across different systems, they get 
  the view/look from the core libraries and work with a non core language.
 
  This is an appropriate way of developing applications, it works well not 
  only for Linux but also for OSX, Windows, iOS, Android, ...
 
 
 
 --
 Mailing list: https://launchpad.net/~elementary-dev-community
 Post to : elementary-dev-community@lists.launchpad.net
 Unsubscribe : https://launchpad.net/~elementary-dev-community
 More help   : https://help.launchpad.net/ListHelp
 
 -- 
 Mailing list: https://launchpad.net/~elementary-dev-community
 Post to : elementary-dev-community@lists.launchpad.net
 Unsubscribe : https://launchpad.net/~elementary-dev-community
 More help   : https://help.launchpad.net/ListHelp

-- 
Mailing list: https://launchpad.net/~elementary-dev-community
Post to : elementary-dev-community@lists.launchpad.net
Unsubscribe : https://launchpad.net/~elementary-dev-community
More help   : https://help.launchpad.net/ListHelp


Re: [Elementary-dev-community] Other languages? (Was Re: Congratulations Luna developers!)

2013-08-21 Thread Julien
The HIG is independent of the language you use, but it partially 
depends on Granite, so if you want to use a language other than C or 
Vala, you might need to mess with bindings.


Official elementary apps will only use Vala (and some legacy C) because 
it makes it much easier for us, but that doesn't mean you can't use a 
different language for your 3rd party app.


And the guide on the website is targeted at people who want to 
contribute to elementary (i.e. official apps) so of course you need to 
know Vala.


Also, could it be we got slightly off topic?

On Wed, Aug 21, 2013 at 11:57 PM, A. Xylon V. avlabs...@gmail.com 
wrote:
At least we're doing better than Android in terms of our language 
tolerance... XD


On a serious note, last time I read the HIG, it was mostly a set of 
UX guidelines though, which could be applied to any language. Unless, 
of course, the HIG has gained vala specific stuff...


On Aug 21, 2013 10:51 PM, Albert Palacios Jimenez 
optimi...@gmail.com wrote:

Hi Jakob,

This is a project worked by volunteers, who are developing other 
things that are more needed right now. Such as a site showing how to 
fix bugs and collaborate with them, or a tutorial on how to develop 
Vala applications for elementary OS.


If you want to contribute, you are welcome to make a proposal of a 
tutorial about Vala bindings to other languages, and how to easily 
port applications using Vala bindings. I am sure the elementary OS 
team (and the GTK community) will be very happy.


Elementary OS is just making a realistic decision choosing one 
language and defining the HIG. This is how great projects grow, and 
how they stand to their principles. 


We would love if you understand that some decisions are just for the 
good of the project and its users.





On Aug 21, 2013, at 11:47 PM, Jaap Broekhuizen jaap...@gmail.com 
wrote:


So you want us to document how to build a elementary style app in 
any possible language? Thanks but no thanks. IMHO we should provide 
generic goals and guidelines as to how an application should work 
and what it should look like, and preferably describe a set of 
tools with which you could achieve that. Vala is just the tool 
elementary agreed upon to use for core apps, and it makes sense to 
use that knowledge to also create third party apps. If you prefer 
to use different tools for third party apps, that's entirely OK. 
But it makes no sense to try to document any possible tool with 
which you could make an elementary style app.


--
Jaap


On Wed, Aug 21, 2013 at 11:39 PM, Jakob Eriksson 
ja...@aurorasystems.eu wrote:

Then there is an education / PR problem on the elementary.org page.

It should be made clear how to make a HIG compliant app in any 
(where

any=C++, hehe) language.



On 2013-08-21 23:32, Albert Palacios Jimenez wrote:

 I think there are some misunderstandings:

 - The HIG is a must for core elementary OS applications but a 
recommendation for third party ones.


 - If you develop your application using a Model/View/Controller 
schema, it will be easy to make it look like an elementary OS just 
changing the View and leaving the original sources for Models and 
Controllers.


 This is why a lot of applications work across different systems, 
they get the view/look from the core libraries and work with a 
non core language.


 This is an appropriate way of developing applications, it works 
well not only for Linux but also for OSX, Windows, iOS, Android, 
...




--
Mailing list: https://launchpad.net/~elementary-dev-community
Post to     : elementary-dev-community@lists.launchpad.net
Unsubscribe : https://launchpad.net/~elementary-dev-community
More help   : https://help.launchpad.net/ListHelp



--
Mailing list: https://launchpad.net/~elementary-dev-community
Post to : elementary-dev-community@lists.launchpad.net
Unsubscribe : https://launchpad.net/~elementary-dev-community
More help   : https://help.launchpad.net/ListHelp




--
Mailing list: https://launchpad.net/~elementary-dev-community
Post to     : elementary-dev-community@lists.launchpad.net
Unsubscribe : https://launchpad.net/~elementary-dev-community
More help   : https://help.launchpad.net/ListHelp


-- 
Mailing list: https://launchpad.net/~elementary-dev-community
Post to : elementary-dev-community@lists.launchpad.net
Unsubscribe : https://launchpad.net/~elementary-dev-community
More help   : https://help.launchpad.net/ListHelp


Re: [Elementary-dev-community] Other languages? (Was Re: Congratulations Luna developers!)

2013-08-21 Thread cameron
 it partially depends on Granite, so if you want to use a language 
other than C or Vala, you might need to mess with bindings


Because D is ABI compatible with C, you do not need to make bindings 
for it, no?


Also, I have seen a Python specific version of Granite, so Jakob, your 
C++ and Python app should have been able to follow elementary HIGs and 
use Granite.


On Wed, Aug 21, 2013 at 3:03 PM, Julien spautz.jul...@gmail.com wrote:
The HIG is independent of the language you use, but it partially 
depends on Granite, so if you want to use a language other than C or 
Vala, you might need to mess with bindings.


Official elementary apps will only use Vala (and some legacy C) 
because it makes it much easier for us, but that doesn't mean you 
can't use a different language for your 3rd party app.


And the guide on the website is targeted at people who want to 
contribute to elementary (i.e. official apps) so of course you need 
to know Vala.


Also, could it be we got slightly off topic?

On Wed, Aug 21, 2013 at 11:57 PM, A. Xylon V. avlabs...@gmail.com 
wrote:
At least we're doing better than Android in terms of our language 
tolerance... XD


On a serious note, last time I read the HIG, it was mostly a set of 
UX guidelines though, which could be applied to any language. 
Unless, of course, the HIG has gained vala specific stuff...


On Aug 21, 2013 10:51 PM, Albert Palacios Jimenez 
optimi...@gmail.com wrote:

Hi Jakob,

This is a project worked by volunteers, who are developing other 
things that are more needed right now. Such as a site showing how 
to fix bugs and collaborate with them, or a tutorial on how to 
develop Vala applications for elementary OS.


If you want to contribute, you are welcome to make a proposal of a 
tutorial about Vala bindings to other languages, and how to easily 
port applications using Vala bindings. I am sure the elementary OS 
team (and the GTK community) will be very happy.


Elementary OS is just making a realistic decision choosing one 
language and defining the HIG. This is how great projects grow, and 
how they stand to their principles. 


We would love if you understand that some decisions are just for 
the good of the project and its users.





On Aug 21, 2013, at 11:47 PM, Jaap Broekhuizen jaap...@gmail.com 
wrote:


So you want us to document how to build a elementary style app 
in any possible language? Thanks but no thanks. IMHO we should 
provide generic goals and guidelines as to how an application 
should work and what it should look like, and preferably describe 
a set of tools with which you could achieve that. Vala is just the 
tool elementary agreed upon to use for core apps, and it makes 
sense to use that knowledge to also create third party apps. If 
you prefer to use different tools for third party apps, that's 
entirely OK. But it makes no sense to try to document any possible 
tool with which you could make an elementary style app.


--
Jaap


On Wed, Aug 21, 2013 at 11:39 PM, Jakob Eriksson 
ja...@aurorasystems.eu wrote:
Then there is an education / PR problem on the elementary.org 
page.


It should be made clear how to make a HIG compliant app in any 
(where

any=C++, hehe) language.



On 2013-08-21 23:32, Albert Palacios Jimenez wrote:

 I think there are some misunderstandings:

 - The HIG is a must for core elementary OS applications but a 
recommendation for third party ones.


 - If you develop your application using a Model/View/Controller 
schema, it will be easy to make it look like an elementary OS 
just changing the View and leaving the original sources for 
Models and Controllers.


 This is why a lot of applications work across different 
systems, they get the view/look from the core libraries and 
work with a non core language.


 This is an appropriate way of developing applications, it works 
well not only for Linux but also for OSX, Windows, iOS, Android, 
...




--
Mailing list: https://launchpad.net/~elementary-dev-community
Post to     : elementary-dev-community@lists.launchpad.net
Unsubscribe : https://launchpad.net/~elementary-dev-community
More help   : https://help.launchpad.net/ListHelp



--
Mailing list: https://launchpad.net/~elementary-dev-community
Post to : elementary-dev-community@lists.launchpad.net
Unsubscribe : https://launchpad.net/~elementary-dev-community
More help   : https://help.launchpad.net/ListHelp




--
Mailing list: https://launchpad.net/~elementary-dev-community
Post to     : elementary-dev-community@lists.launchpad.net
Unsubscribe : https://launchpad.net/~elementary-dev-community
More help   : https://help.launchpad.net/ListHelp


-- 
Mailing list: https://launchpad.net/~elementary-dev-community
Post to : elementary-dev-community@lists.launchpad.net
Unsubscribe : https://launchpad.net/~elementary-dev-community
More help   : https://help.launchpad.net/ListHelp


Re: [Elementary-dev-community] Other languages? (Was Re: Congratulations Luna developers!)

2013-08-21 Thread Craig
Vala can target Windows and OSX last I checked. Also, Elementary can run
apps written in non-Vala languages. Of course, it's not supported because
Elementary's development resources are spread so thin and many developers
here don't have expansive experience in other languages.


On Wed, Aug 21, 2013 at 4:14 PM, Jakob Eriksson ja...@aurorasystems.euwrote:

 On 2013-08-21 22:59, A. Xylon V. wrote:
  The thing about vala is that its simple enough to learn, but is still
 very
  powerful and is extremely fast. The best thing is that it was made for
 Gtk,
  which is perfect for elementary.
 
  More languages would mean that we wouldn't have unity across the
  applications - I do however, think that this would attract developers,
  especially since vala does not have very good tutorials, or books.

 That is an understatement. Not having support for other languages is
 sort of insane.

 Scenario:

 I am a developer. I develop an application for Windows and, against
 commercial reason, make a Linux version of it too. It's coded in a mix
 of C++ and Python.

 I think Elementary is just fantastic, so just out of love I want to make
 my Linux app an Elementary version. I read the HIG and love it.

 Then I go to http://elementaryos.org/docs/code on the FIRST page I read:

 If you're not familiar with Vala, we highly encourage you to brush up
 on it before coming here.

 Sorry say what? No, not going to happen. I can't redo my app in Vala,
 even if I wanted to, because that means I can't run it on Windows. (Or
 OSX, or iOS.)


 The dev page should read something like for Elementary core apps we use
 Vala as a programming language. If you want to create your own
 Elementary apps, we encourage you to try out Vala, which is a fantastic
 language. If you want to use another language, that's fine too. Here are
 example Hello World Elementary apps written in C++, Objective C, Python
 and Ruby.


 --jakob

 --
 Mailing list: https://launchpad.net/~elementary-dev-community
 Post to : elementary-dev-community@lists.launchpad.net
 Unsubscribe : https://launchpad.net/~elementary-dev-community
 More help   : https://help.launchpad.net/ListHelp

-- 
Mailing list: https://launchpad.net/~elementary-dev-community
Post to : elementary-dev-community@lists.launchpad.net
Unsubscribe : https://launchpad.net/~elementary-dev-community
More help   : https://help.launchpad.net/ListHelp


Re: [Elementary-dev-community] Other languages? (Was Re: Congratulations Luna developers!)

2013-08-21 Thread Craig
To get this conversation back on topic, I'm experimenting with developing
Gtk apps in Go (http://golang.org). Once I have that mastered, it
shouldn't be too hard to make Granite apps given that Granite compiles to
C. And Go is probably only a little slower than Vala but a lot more user
friendly (the barrier to entry is a LOT lower, simpler design, better
tooling, bigger community, etc). If you're interested in experimenting with
me, let me know.


On Wed, Aug 21, 2013 at 3:54 PM, Jakob Eriksson ja...@aurorasystems.euwrote:

 On 2013-08-21 22:35, Kurt Smolderen wrote:

  look at the code. As Vala is currently missing a decent IDE (such as
  Eclipse,...) and debugging isn't as easy due to the fact the code is
  translated into C, its often very difficult to analyse the flow of a
  program. Available tests might help this initial contributors with


 And when will it be blessed to create Elementary apps in another
 language than Vala? If Elementary would open up to other languages,
 we could REALLY see increased productivity and more contributors.
 IMHO Objective C, C++ and maybe even Java via GCJ would be the obvious
 candidates.

 --jakob


 --
 Mailing list: https://launchpad.net/~elementary-dev-community
 Post to : elementary-dev-community@lists.launchpad.net
 Unsubscribe : https://launchpad.net/~elementary-dev-community
 More help   : https://help.launchpad.net/ListHelp

-- 
Mailing list: https://launchpad.net/~elementary-dev-community
Post to : elementary-dev-community@lists.launchpad.net
Unsubscribe : https://launchpad.net/~elementary-dev-community
More help   : https://help.launchpad.net/ListHelp


Re: [Elementary-dev-community] Congratulations Luna developers!

2013-08-21 Thread Craig
I'm not opposed; however, every time I've delved into Elementary
development, I've found myself fighting too many tertiary fires before I'm
able to get any real work done (usually it's chasing down one obscure
environment issue or another). So basically, I would like someone who is
competent at Elementary development to champion the project (to serve as
its leader) and I and a few other TDDevelopers can coach the development
team as well as help develop ourselves.

Furthermore, this exercise will be more productive if we have other devs
who are interested in *learning* TDD to participate.

So basically, if you can find a few elementary-proficient developers to
help with the elementary-specific problems (including a project lead), the
other TDDevelopers and I can coach and develop along side them.

Thoughts?


On Wed, Aug 21, 2013 at 4:50 PM, Kurt Smolderen
kurt.smolde...@empuly.netwrote:

 What do you think of giving Footnote some love? I think it is currently
 unmaintained (need to verify that), it's conceptually a rather simple
 application but offers a good set of practices for TDD/ writing tests.

 We need to verify first of course what the intentions of the current owner
 are, but I would personally like to see a new version of Footnote...

 Craig webe...@gmail.com wrote:


 I have never heard a project die because they decided to move to TDD. And
 I heard about lots of hits on the matter.


 This. I've heard (and witnessed) a lot of projects drop their defect
 percentage from 20% to 3%.  A lot of new-to-TDD developers don't like it at
 first because it feels slower, but I don't think those people remember how
 much time is spent bug hunting at the end of a release cycle.

 I think the next step is to find a pilot project and get the lead
 developer(s) to agree to work toward TDD. This will probably look like:

 1) Modifying the project structure to include _test directories
 2) Creating tests with GLib.Test or some such
 3) Coaching/mentoring the developers at TDD
 4) Performing code reviews in which insufficiently tested code is sent
 back for revision

 After testing it out for a few months, the community can see how they
 like it.

 Does this sound like a reasonable approach? If so, would any project
 leads like to volunteer their project? And who in the community would like
 to participate in such an experiment?


 On Wed, Aug 21, 2013 at 4:34 AM, Alex Lourie djay...@gmail.com wrote:

 Albert

 We don't need to exaggerate. Though TDD is, indeed, a development
 methodology, it is not supposed to completely change the way everyone works.

 Just consider that writing a good test takes about 10 minutes, and that
 each developer writes one or two tests for new stuff they add (or the old
 one they fix) from time to time. Then, in time, you'll have part of your
 code tested, which is exactly what we're aiming for. Beginning is hard,
 continue something is easier.

 I have never heard a project die because they decided to move to TDD.
 And I heard about lots of hits on the matter.


 On Tue, Aug 20, 2013 at 3:37 AM, Albert Palacios optimi...@gmail.comwrote:

 Hi Craig,

 Thanks for your explanation and the linked video. I am still agnostic,
 but I don't want to be the only one who complained about the proposal.

 At this point I have more questions than answers, and those will
 probably be solved with a working example.

 But remember, *TDD is a development methodology* not a testing
 methodology. It will change our development work flow, and will probably
 move potential volunteers away from the project.

 TDD like every other development methodology does not fit every project
 or team. It can be a hit, and it can even the death of the project.

 Albert




 On Tue, Aug 20, 2013 at 12:50 AM, Craig webe...@gmail.com wrote:

 Hi Albert,

 Thanks for your response, you asked a lot of great questions. In
 addition to Gufran's earlier response.

  Can you prove that there will be huge benefits in time/resources?


 Well, that depends on what you consider proof. In the spring, my
 company paid several thousand dollars to send me to a conference in San
 Jose in which many software development authorities recited, test driven
 development pays itself off in iteration 0. That means the very first 
 time
 you write the code it has already paid for itself (because even before you
 get the automatic-regression testing benefits, you've already got the
 benefits of a better architecture and documentation--because the tests
 _are_ the documentation!). I'm sure I can dig up lots of other resources,
 but I think it should suffice to say that I've never heard an expert
 comment on TDD except to say it's fastest way to develop quality software.
 For more information addressing your specific concerns, se e the Wikipedia
 article's benefits section (and read on to the shortcomings as it is
 also relevant:
 http://en.wikipedia.org/wiki/Test-driven_development#Benefits. Even
 more importantly, this short video: