
Ask HN: Any Ideas for Master's Thesis in Software Engineering? - imafish
I am about to spend six months on a master&#x27;s thesis in software engineering and would like some inspiration for the topic.<p>Any ideas?
======
elviejo
"Bad smells" are the symptoms that a refactoring is required.

Code sniffers and linters and style checkers are tools that detect that a bad
smell is present.

An architectural bad smell is violation of the architecture. IE the view
modifies data, the controller is too fat, etc.

Hence it is required to have a Code sniffer for architectural bad smells.

However considering that there are so many architectural patterns, so many
frameworks that implement them it is herculean task.

So could it be possible to use Machine Learning to detect them hence the
thesis:

"Automatic detection of architectural bad smells with Neural Networks"

~~~
throweway
Or invent a programming language that gives a lot of the guarantees and
robustness of a hard-ass fp lanuguage but is as easy to pick up as Java or
Ruby.

------
wallflower
Such a broad topic. You should at least hint at some of your interests.

Ideally, do something related to your true interests in software engineering.
6 months is not a long time. You definitely want a deliverable code product,
even if just a minimum-viable implementation.

If you are having trouble remembering, go back through your bookmarks/upvoted
HN posts (if this a throwaway)/read laters.

Suggestions: Take what ImTalking said and apply it. Find an industry that
could benefit from software improvements/modeling/automation. Find the pain
points.
[https://news.ycombinator.com/item?id=11444451](https://news.ycombinator.com/item?id=11444451)

Combine data visualization with something of interest to the HN community that
could go "viral" on HN once you publish it.

Write an interesting niche chat bot (this is a really emerging field). Perhaps
with machine learning.

Write something that your future employers might use as a hireability signal

Start a blog. Post it on HN. Document your process of researching and writing
the thesis. Show us what it is like to be researching something in depth. I
think many at HN (even those who openly eschew the idea of going back to
school - or even going to college in the first place) would find it
interesting.

~~~
imafish
Thanks for the advice. Would love to post about it - hadn't really thought
that it could be of interest to anyone :-)

Mostly my interests are within cloud computing, machine learning and web
development, so more or less mainstream fields. E.g. a topic could be to
utilize some cloud computing patterns or machine learning in a given setting.
I just lack inspiration for the setting.

------
eecks
I didn't continue with education after my degree mainly because I wasn't sure
of what I actually wanted. I'm interested to hear what others did for their
Masters/PhDs and what ideas people have.

------
pjungwir
If I had six months to research something, I'd work on temporal databases,
starting with the book Developing Time-Oriented Database Applications in SQL.
I'd look at the history of attempts to bring this into the SQL standard,
including the arguments between Snodgrass and Date, and what was eventually
put in SQL2011. Then I'd see how much of this Postgres supports, and possibly
take a shot and filling in some gaps. Or I'd try to adapt a popular ORM to
work with temporal tables.

But that is me. Pick something that interests you!

By the way, for six months, you had better pick something very focused. I
would try to err on the side of modest. If all you have right now is a broad
topic, see if you can pull at one loose thread---some annoyance or nagging
question---and see where it takes you. Probably you will find hundreds of
articles to read, and more complexity than you expected. Grad school is a rare
chance to "go down the rabbit hole", but you should expect that your six
months will fly by. Research is like reading Wikipedia: it constantly branches
and takes you into new things you "need" to know.

------
distortedlojik
A problem in my field, scientific computing and HPC, suffers from a big
problem involving the reproducibility of experiments. Some tools like Jupyter
help, but that is only useful in a limited capacity.

------
lcall
If you have any interest in helping to improve how mankind organizes its
knowledge (as a whole or at any level), I'd love participation here (or just
your exploring it in an academic way):
[http://onemodel.org](http://onemodel.org) (AGPL, a new approach I call
"atomic knowledge" because of the internal structure, which I discuss if you
explore the web site a bit, but it could be described better than it is).

I just made a more detailed description here:
[https://news.ycombinator.com/item?id=11461985](https://news.ycombinator.com/item?id=11461985)
.

------
shoo
What are your plans for the next few years after your master's thesis? How
would your thesis contribute toward those plans?

------
brudgers
Reactive web framework in Racket.

------
Irishsteve
Look for something in the apache incubator and try to contribute something to
that.

