I want to contribute and chose right project for graduate thesis

classic Classic list List threaded Threaded
24 messages Options
12
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

I want to contribute and chose right project for graduate thesis

Mario Krajačić
Hello,

I am student of IT from Croatia on finishing year for my bachelor's degree.

For the graduate thesis I would like to contribute some open source
project. For example it can be  some bug fix. Language in I work is C. My
knowledge is shown in programs on git profile: https://github.com/mkrajaci

Project which I choose will be sent to my professor - mentor who will
approve or not difficulty of project.

Please advice me about how to help you and choose right project.


* God bless You! *
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: I want to contribute and chose right project for graduate thesis

Emanuel Berg-4
Mario Krajačić wrote:

> I am student of IT from Croatia on finishing
> year for my bachelor's degree.
>
> For the graduate thesis I would like to
> contribute some open source project.
> For example it can be some bug fix.

For a bachelor degree report, it should be more
than just a bug fix. It should be a small
module, which is to your liking from day one.

It shouldn't be a bug fix as that would be too
small and confined, also, it would be defined
by what other people haven't done - and why?
because it is too trivial or uninteresting or
what is there already is a total mess? all red
flags. If your project is about what other
people have not done, it should be because they
haven't thought about it at all or only dared
dream about it :)

> Language in I work is C.

At your level you know several languages and
learning a new one isn't a problem. Just make
sure the language you learn is, again, to
your liking!

If you like Lisp, it well within your
capability to pick up Haskell in a couple of
weeks. But if you don't like Haskell, it is
still a bad move. And how do know if you like
it before you know it? You just know.

Final word is you should believe and enjoy the
project from day one. Don't do it just because
you feel you are able to do it and it is the
next step in your "education career".
Because of course it is and of course you are
able to do it.

And don't be stressed to "get going already".
Look for a good project until you know for sure
it is the one to go for. This, you simply feel
when you see it.

PS. Probably you will use several languages.
    For my CS Master project, I used C++, Lisp,
    and zsh (for support/tests), with LaTeX,
    groff, and gnuplot if you count the
    document itself :)

--
underground experts united
http://user.it.uu.se/~embe8573


Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: I want to contribute and chose right project for graduate thesis

Kevin Buchs
In reply to this post by Mario Krajačić
As I understand it, Mario, you need a Master's level project and you have
an interest in Emacs and C programming.

This will get you started on contributing to GNU in general:
https://www.gnu.org/help/help.en.html .

Your advisor should be the be to judge what the appropriate level of work
would be. I would not assume US levels would apply and even within US it
varies by school and degree options.

I don't have any actual information on this, but I  would guess that there
is not much work being done on the C code for emacs, mostly on the elisp
code. There is a parallel email/news group  for those developing emacs.
They would be the authorities. They may be a good source of ideas for
projects you could do. If you can get some idea of the appropriate level of
effort for the project, that will improve the ideas. Effort could be lines
of code or the amount of time expected to complete the work.

Kevin Buchs


On Fri, Jul 21, 2017 at 8:36 AM Mario Krajačić <[hidden email]>
wrote:

> Hello,
>
> I am student of IT from Croatia on finishing year for my bachelor's degree.
>
> For the graduate thesis I would like to contribute some open source
> project. For example it can be  some bug fix. Language in I work is C. My
> knowledge is shown in programs on git profile: https://github.com/mkrajaci
>
> Project which I choose will be sent to my professor - mentor who will
> approve or not difficulty of project.
>
> Please advice me about how to help you and choose right project.
>
>
> * God bless You! *
>
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: I want to contribute and chose right project for graduate thesis

Marcin Borkowski-3
In reply to this post by Emanuel Berg-4

On 2017-07-21, at 18:01, Emanuel Berg <[hidden email]> wrote:

> Mario Krajačić wrote:
>
>> I am student of IT from Croatia on finishing
>> year for my bachelor's degree.
>>
>> For the graduate thesis I would like to
>> contribute some open source project.
>> For example it can be some bug fix.
>
> For a bachelor degree report, it should be more
> than just a bug fix. It should be a small
> module, which is to your liking from day one.
>
> It shouldn't be a bug fix as that would be too
> small and confined, also, it would be defined
> by what other people haven't done - and why?
> because it is too trivial or uninteresting or
> what is there already is a total mess? all red
> flags. If your project is about what other
> people have not done, it should be because they
> haven't thought about it at all or only dared
> dream about it :)

Just my 2 cents: not necessarily, see all the discussion on emacs-devel
about bug#21072.

Best,

--
Marcin Borkowski

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: I want to contribute and chose right project for graduate thesis

Emanuel Berg-4
In reply to this post by Kevin Buchs
Kevin Buchs wrote:

> As I understand it, Mario, you need
> a Master's level project [...] Your advisor
> should be the be to judge what the
> appropriate level of work would be.

There is no "appropriate level" for a Master
project - the sky is the limit!

Actually, the OP said he was on the Bachelor
level. However there isn't really a level for
that either. The perceived difficulty is
fictitious - after doing programming all day
every day for several years involving tons of
courses with a huge variety involving all but
all software areas, *anything* is possible!

The only "level" which might come to play is
the scope - i.e., not how difficult someone
else would say something is, but how much code
is to be produced and how many problems are to
be solved - that is, a mere
quantitative level.

As for the scope it took me 1.5 years doing my
Master including the summer and winter
"brakes". And it wasn't because of laziness,
let me tell you! This was supposed to be done
in a singe semester. I did the same thing as
five other people did at two
North American universities.

So in a way, even the scope is of no matter :)

--
underground experts united
http://user.it.uu.se/~embe8573


Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: I want to contribute and chose right project for graduate thesis

Emanuel Berg-4
In reply to this post by Marcin Borkowski-3
Marcin Borkowski wrote:

> Just my 2 cents: not necessarily, see all the
> discussion on emacs-devel about bug#21072.

50 cent: Don't do it.

Half the time will be wasted with unpleasant
arguing with other people with huge egos, the
other half will be wasted trying to understand
what has been done before you even entered
the project.

--
underground experts united
http://user.it.uu.se/~embe8573


Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: I want to contribute and chose right project for graduate thesis

Tomas Nordin-2
In reply to this post by Mario Krajačić
Mario Krajačić <[hidden email]> writes:

> Hello,
>
> I am student of IT from Croatia on finishing year for my bachelor's degree.
>
> For the graduate thesis I would like to contribute some open source
> project. For example it can be  some bug fix. Language in I work is C. My
> knowledge is shown in programs on git profile: https://github.com/mkrajaci

As mentioned elsewhere on this thread, maybe a bug fix is a bit specific
for a thesis work, but doesn't have to be of course. I just wanted to
give a tip on a discussion going on right now on the coreutils list on
the program cut. cut is a program for getting selected delimited fields
from a file. Some people over the years has requested the possibility
for the program to respect the order of the fields specified (cut will
maintain the order of fields in the file). The maintainers thinks this
/might/ be a good feature but will not implement it because it can be
done by combining cut with other tools plus none of them see the
need. They will however re-view patches.

Anyways, see this thread for details:
https://lists.gnu.org/archive/html/coreutils/2017-07/msg00025.html

It is said in that thread that because of how cut is implemented, this
feature addition is non-trivial to implement. If one is prepared for the
possibility that the feature is not added despite it might work to a
certain degree, it could be a very good exercise I imagine. I am sure
they would give help and feedback along the way.

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: I want to contribute and chose right project for graduate thesis

Emanuel Berg-4
Tomas Nordin wrote:

> cut is a program for getting selected
> delimited fields from a file. Some people
> over the years has requested the possibility
> for the program to respect the order of the
> fields specified (cut will maintain the order
> of fields in the file).

cut(1) is a small shell utility, part of the
indispensible Unix (or GNU) tool chain. It is
located in the coreutils package, assuming
a Debian system or fork.

cut is used for simple but effective parsings
of command outputs, for example this one

    #! /bin/zsh
    key () {
        local key=$1
        ascii -t $key | head -n 1 | tr -s  " " | cut -d" " -f 2
    }

You can get the source with

    $ apt-get source coreutils

The cut source will then be in the src/ dir, in
the file cut.c .

cut.c is 832 lines of very good-looking C,
which isn't always the case if someone was
under that illusion.

--
underground experts united
http://user.it.uu.se/~embe8573


Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: I want to contribute and chose right project for graduate thesis

Emanuel Berg-4
In reply to this post by Tomas Nordin-2
Tomas Nordin wrote:

> Some people over the years has requested the
> possibility for the program to respect the
> order of the fields specified (cut will
> maintain the order of fields in the file).

Despite using cut 27 times in my zsh source,
I have never experienced any problems and
I don't understand what is lacking.
Perhaps because I have used it to parse command
outputs, not file contents ... tho my intuition
tells me, that shouldn't matter! Care to share
an example where cut as it presently
stands fails?

--
underground experts united
http://user.it.uu.se/~embe8573


Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: I want to contribute and chose right project for graduate thesis

Marcin Borkowski-3
In reply to this post by Emanuel Berg-4

On 2017-07-21, at 22:01, Emanuel Berg <[hidden email]> wrote:

> Marcin Borkowski wrote:
>
>> Just my 2 cents: not necessarily, see all the
>> discussion on emacs-devel about bug#21072.
>
> 50 cent: Don't do it.
>
> Half the time will be wasted with unpleasant
> arguing with other people with huge egos, the
> other half will be wasted trying to understand
> what has been done before you even entered
> the project.

What I meant was an example when "fixing a bug" involved a few
discussions and finally resulted in adding new functonality.  Still,
this particular example is way too small for a thesis IMHO, but you get
the idea.

And I didn't really notice people with huge egos over there.  The thread
is probably rather boring for non-involved people, though.

Best,

--
Marcin Borkowski

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: I want to contribute and chose right project for graduate thesis

Richard Melville-2
In reply to this post by Mario Krajačić
On 21 July 2017 at 23:17, Emanuel Berg <[hidden email]> wrote:

> Tomas Nordin wrote:
>
> > cut is a program for getting selected
> > delimited fields from a file. Some people
> > over the years has requested the possibility
> > for the program to respect the order of the
> > fields specified (cut will maintain the order
> > of fields in the file).
>
> cut(1) is a small shell utility, part of the
> indispensible Unix (or GNU) tool chain. It is
> located in the coreutils package, assuming
> a Debian system or fork.
>

Cut is certainly one of the GNU stable of tools, and it can be chained
using the pipe command, but it's not generally known as being part of the
tool chain, like Binutils, GCC, and Glibc.  Also, cut is definitely part of
the Coreutils package without assuming anything to do with Debian.  As the
name suggests, it is part of the core utilities of the operating system.

Richard Melville
Systems Architect
cellularity.co.uk
stellarsystem.wordpress.com
+44 20 33 555 305
+44 7957 836330
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: I want to contribute and chose right project for graduate thesis

Emanuel Berg-4
In reply to this post by Marcin Borkowski-3
Marcin Borkowski wrote:

> you get the idea

I got the idea from the very first post.
Still don't like it.

> The thread is probably rather boring for
> non-involved people, though.

I don't know how it is in the math world, but
as for my "thesis", the vast majority of even
computer people would probably consider it
completely incomprehensible or, if they did
understand any of it, rather boring.

The only science that is fun to everyone is
archeology in the Indiana Jones sense, or deep
sea exploration, in the vertical cigar mini sub
science vessel sense.

But it is not about everyone. For the person or
people doing the technology project and writing
the thesis, it can be very fun and very,
very rewarding.

And this is wey you shouldn't waste either the
Bachelor and certainly not the Master
opportunity - don't settle for a project you
don't instantly believe in, emotionally as well
as intellectually!

--
underground experts united
http://user.it.uu.se/~embe8573


Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: I want to contribute and chose right project for graduate thesis

Emanuel Berg-4
In reply to this post by Richard Melville-2
Richard Melville wrote:

> Cut is certainly one of the GNU stable of
> tools, and it can be chained using the pipe
> command, but it's not generally known as
> being part of the tool chain

Maybe it was cut out of the chain at some point?

--
underground experts united
http://user.it.uu.se/~embe8573


Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: I want to contribute and chose right project for graduate thesis

Tomas Nordin-2
In reply to this post by Emanuel Berg-4
Emanuel Berg <[hidden email]> writes:

> Despite using cut 27 times in my zsh source,
> I have never experienced any problems and
> I don't understand what is lacking.
> Perhaps because I have used it to parse command
> outputs, not file contents ... tho my intuition
> tells me, that shouldn't matter! Care to share
> an example where cut as it presently
> stands fails?

I hope I have not made the impression that I think it fails somehow, I
was merely trying to give a tip on something to possibly hack on for a
thesis. Maybe participate in the thread on the coreutils list if
feelings against the suggestion are strong? :)

But since I cannot resist, here is my rewrite of the suggestion:

$ cat feb17.csv | head -n 1
Datum,Transaktion,Kategori,Belopp,Saldo
$ cut -d, -f 1,3 feb17.csv | head -n 1
Datum,Kategori
# can we ask cut to reorder the fields by requesting them in other order?
$ cut -d, -f 3,1 feb17.csv | head -n 1
Datum,Kategori
# seems not

So the suggestion is about outputting the fields as requested on the
command line.

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: I want to contribute and chose right project for graduate thesis

Emanuel Berg-4
Tomas Nordin wrote:

> Maybe participate in the thread on the
> coreutils list if feelings against the
> suggestion are strong? :)

Ha ha :D

> So the suggestion is about outputting the
> fields as requested on the command line.

Sounds more like an awk or Perl thing...

As for the thesis idea - my Bachelor report was
short, but still 57 pages. My Master report was
- I think pretty normal - 153 pages. I don't
know how many pages anyone could ever write
about rearranging the fields with cut, but hey,
I've been surprised before. Several times
actually...

--
underground experts united
http://user.it.uu.se/~embe8573


Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: I want to contribute and chose right project for graduate thesis

Mario Krajačić
Hello to all,

All your mails were very helpful. My mentor is advised me to search unit
testing project. That will be enough for thesis.

Could you please advice me some unit test projects in C.

* God bless You! *
* Bog vas blagoslovio! *

2017-07-22 23:37 GMT+02:00 Emanuel Berg <[hidden email]>:

> Tomas Nordin wrote:
>
> > Maybe participate in the thread on the
> > coreutils list if feelings against the
> > suggestion are strong? :)
>
> Ha ha :D
>
> > So the suggestion is about outputting the
> > fields as requested on the command line.
>
> Sounds more like an awk or Perl thing...
>
> As for the thesis idea - my Bachelor report was
> short, but still 57 pages. My Master report was
> - I think pretty normal - 153 pages. I don't
> know how many pages anyone could ever write
> about rearranging the fields with cut, but hey,
> I've been surprised before. Several times
> actually...
>
> --
> underground experts united
> http://user.it.uu.se/~embe8573
>
>
>
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: I want to contribute and chose right project for graduate thesis

Emanuel Berg-4
Mario Krajačić wrote:

> All your mails were very helpful. My mentor
> is advised me to search unit testing project.
> That will be enough for thesis.
>
> Could you please advice me some unit test
> projects in C.

Testing is by now a whole research body so this
project has the advantage there should be
a couple of big books to read.

Unit testing is basically small wrappers around
library functions that do basic computation
(the lib funs do that, that is).
Whenever something is changed in the library,
unit testing is done to see if it still adds
up. So if you have a library to compute the
square of x, whenever anything is changed, unit
testing checks if x² is still 4 for x = 2.

For more advanced examples it is not
a bulletproof method, but it still should catch
most errors.

The "problem" with unit testing, and actually
all testing, is no matter what there is always
another superior method to test, and that is to
*use* the software. And if many people do it,
the better. And I'm not talking "beta testing"
here. Just use the real deal!

--
underground experts united
http://user.it.uu.se/~embe8573


Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: I want to contribute and chose right project for graduate thesis

Ken Goldman-2
In reply to this post by Emanuel Berg-4
On 7/21/2017 4:01 PM, Emanuel Berg wrote:

> Marcin Borkowski wrote:
>
>> Just my 2 cents: not necessarily, see all the
>> discussion on emacs-devel about bug#21072.
>
> 50 cent: Don't do it.
>
> Half the time will be wasted with unpleasant
> arguing with other people with huge egos, the
> other half will be wasted trying to understand
> what has been done before you even entered
> the project.

My 2 cents.

Learning how to deal with huge egos and understanding the culture of
open source projects is valuable - certainly not a waste of time for a
new engineer.

I don't know whether it's thesis-worthy.


Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: I want to contribute and chose right project for graduate thesis

Emanuel Berg-4
Ken Goldman wrote:

> My 2 cents.
>
> Learning how to deal with huge egos and
> understanding the culture of open source
> projects is valuable - certainly not a waste
> of time for a new engineer.

Well, yeah. Actually it is not the huge egos
that is the problem. What I menat was - some
time one these lists and groups people have an
attitude to newcomers that isn't good, either
they are reluctant to give good answers, like
they answer in very short sentences, *or* they
do the opposite, write several pages with
details which the newcomer won't understand
much of, and then they start speaking among
themselves and the newcomer obviously doesn't
feel encouraged to proceed with the project.

> I don't know whether it's thesis-worthy.

Right. Like most other things it is better to
learn that along the way. Many educations work
like that way by the way. Like CS. They don't
teach programming, at least not here they
don't. It is just something you are expected to
pick up while doing AI, databases, interfaces,
and what have you...

And it makes sense! Universities should be
theory and practice that is oriented to the
theory, not to the practice itself.
Because practice is much easier, many, many
people can do it and certainly anyone who has
been thru "3" or "5 years" of all that theory
and theory-practice. (I put the years within
quotation marks because no one ever comples
their education in time. Not because being
lazy, mind you. If anyone would ever do that,
people would ask, "hey, what is wrong with this
dude?!")

But when you are stuck in all that theory it
sure is a lot of frustration :)

"Why can't we just work on it?" :)

--
underground experts united
http://user.it.uu.se/~embe8573


Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: I want to contribute and chose right project for graduate thesis

Marcin Borkowski-3

On 2017-07-28, at 01:27, Emanuel Berg <[hidden email]> wrote:

> Ken Goldman wrote:
>
>> My 2 cents.
>>
>> Learning how to deal with huge egos and
>> understanding the culture of open source
>> projects is valuable - certainly not a waste
>> of time for a new engineer.
>
> Well, yeah. Actually it is not the huge egos
> that is the problem. What I menat was - some
> time one these lists and groups people have an
> attitude to newcomers that isn't good, either
> they are reluctant to give good answers, like
> they answer in very short sentences, *or* they
> do the opposite, write several pages with
> details which the newcomer won't understand
> much of, and then they start speaking among
> themselves and the newcomer obviously doesn't
> feel encouraged to proceed with the project.

I'm not sure whether I agree.  A short answer may be quite good.  It may
give a pointer - a starting point to learn.  And if someone doesn't get
it, they may always ask further questions.

>> I don't know whether it's thesis-worthy.
>
> Right. Like most other things it is better to
> learn that along the way. Many educations work
> like that way by the way. Like CS. They don't
> teach programming, at least not here they
> don't. It is just something you are expected to
> pick up while doing AI, databases, interfaces,
> and what have you...
>
> And it makes sense! Universities should be
> theory and practice that is oriented to the
> theory, not to the practice itself.

+1 from me.  May I hang this quotation on my office's door so that all
students can see it? ;-)

> Because practice is much easier, many, many
> people can do it and certainly anyone who has
> been thru "3" or "5 years" of all that theory
> and theory-practice. (I put the years within
> quotation marks because no one ever comples
> their education in time. Not because being
> lazy, mind you. If anyone would ever do that,
> people would ask, "hey, what is wrong with this
> dude?!")

Really?  I did two master's degrees, and both were finished JIT.  And
I'm not an exception - many, many of my colleagues did a similar thing.

> But when you are stuck in all that theory it
> sure is a lot of frustration :)

Well, in maths, theory is basically all you've got;-).

Best,

--
Marcin Borkowski

12
Loading...