Google Summer of Code 2023 - Coding! Up to July 10th

Contributions from the participants, questions and answers to their projects.
Discussions of proposals for upcoming events.
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
User avatar
Roy_043
Veteran
Posts: 8450
Joined: Thu Dec 27, 2018 12:28 pm

Re: Google Summer of Code 2023 - Call for Ideas

Post by Roy_043 »

Hologram wrote: Thu Feb 09, 2023 2:51 pm The opening post's sentence is open to multiple interpretations.
Not really. Gene's interpretation is wrong, he must have missed the word 'or'.
User avatar
kkremitzki
Veteran
Posts: 2511
Joined: Thu Mar 03, 2016 9:52 pm
Location: Illinois

Re: Google Summer of Code 2023 - Call for Ideas

Post by kkremitzki »

Yep, the purpose was for any of the three: ideas, mentors, or students.
Like my FreeCAD work? I'd appreciate any level of support via Patreon, Liberapay, or PayPal! Read more about what I do at my blog.
grd
Posts: 328
Joined: Wed Apr 13, 2022 5:13 am
Location: Eindhoven, The Netherlands

Re: Google Summer of Code 2023 - Call for Ideas

Post by grd »

Well, I still like my idea, but maybe I can say something more. There is a library called nimqt which is a wrapper for a lot of the qt stuff. It is an impressive library. https://github.com/jerous86/nimqt

Yes, this library can also read *.ui files. You can look at the documentation and at the examples to get an idea.


And if you really want to rewrite obsolete C++ code then maybe you can rewrite it in Nim if you want to instead of trying to modernize it but that is not the goal. The goal is to make another extension language next to Python.

For Qt Creator there are two official packages, one for which you can build your code: https://doc.qt.io/qtcreator/creator-project-nimble.html and also a plugin: https://codereview.qt-project.org/c/qt- ... /+/123629/

VS Code has multiple plugins for Nim.


Now about the language Nim:

You can compile the Nim code to C, C++, Objective-C and even JavaScript, but that is not really important in this case because here we are talking about compiling it to C++.

For conveniance you can use different GC options (ARC, ORC or even the Google Go GC) and even turn it off but I would not advise that. The current version is in the Nim 1.6 range but 2.0 compiles standard with ORC and ORC means optimized reference counting. ARC means automatic reference counting and it is being used inside Swift and Objective-C, so I think that it is good.

There are two points of debate inside Nim. Either you like them or not:
1. The naming of variables and procedures. Nim doesn't care about the case style and even underscores are allowed, which means that you can write your variable in CamelCase, camelCase and snake_case and it still compiles. But you can't use two underscores next to each other. Then you get an error. Nim is no Python!
2. Nim doesn't care about using ( and ), which means that sometimes you can write stuff that is hard to understand, which is why I always try to use them.


I am saying that using Nim for a new WB can make your code as fast as C++ without having the need for C++ and I think that is important.


Edit: I edited this quite a lot, so better read it again.
Last edited by grd on Sun Feb 12, 2023 11:25 am, edited 3 times in total.
About Nim. Latest Release 2.0.2. Here is Nim in 100 seconds and a Nim package. There are Qt and OCCT packages.
heda
Veteran
Posts: 1348
Joined: Sat Dec 12, 2015 5:49 pm

Re: Google Summer of Code 2023 - Call for Ideas

Post by heda »

anything on Sandbox:Wishlist?

favorites are:
- anything in mesh wb (on the wishlist page)
- create a first implementation of dxf import based on ezdxf

if any of these topics, could be persuaded to mentor (although will be of little use regarding code details of c/compiling, but have a feeling that people with those skills are around anyways if a gsoc takes off).

not on the wishlist page, but it would be cool if fc had an internal (working) mesh "remesher", not so much that it is core fc, more for how people potentially can see fc as a one-stop shop for the hobbyist 3d-printing world.
Last edited by heda on Sun Feb 12, 2023 5:08 pm, edited 1 time in total.
Hologram
Posts: 201
Joined: Thu Nov 03, 2022 3:05 pm

Re: Google Summer of Code 2023 - Call for Ideas

Post by Hologram »

heda wrote: Sun Feb 12, 2023 10:54 am not on the wishlist page, but it would be cool if fc had an internal (working) mesh "remesher", not so much that is is core fc, but for how people potentially can see fc as a one-stop shop for the hobbyist 3d-printing world.
Back when it was released, Autoremesher seemed to be the best option out there, according to this Blenderartists thread. The main branch hasn't seen development in 3 years, haven't checked any of its forks.

Eventually, a NURBS based SubD implementation would be cool as well (but that's further down the line, I suppose).
User avatar
sliptonic
Veteran
Posts: 3457
Joined: Tue Oct 25, 2011 10:46 pm
Location: Columbia, Missouri
Contact:

Re: Google Summer of Code 2023 - Call for Ideas

Post by sliptonic »

What do y'all think of migrating the GSoC project list to Github Issues and then creating a GSoC tag.

- it would be easier to find new project ideas
- it would give a student a place to communicate around the solution
- eventual PR would resolve
- Projects that don't get selected might get solved by someone else
- it would eliminate duplication of info between github, forum, and wiki.

of course the project ideas should be expressed in typical issue form. ie as a problem to be solved.

@Kunda1 What do you think?
grd
Posts: 328
Joined: Wed Apr 13, 2022 5:13 am
Location: Eindhoven, The Netherlands

Re: Google Summer of Code 2023 - Call for Ideas

Post by grd »

sliptonic wrote: Tue Feb 14, 2023 6:16 pm What do y'all think of migrating the GSoC project list to Github Issues and then creating a GSoC tag.
LGTM but I am not a member of the core team. Do you want me to do it?
About Nim. Latest Release 2.0.2. Here is Nim in 100 seconds and a Nim package. There are Qt and OCCT packages.
User avatar
sliptonic
Veteran
Posts: 3457
Joined: Tue Oct 25, 2011 10:46 pm
Location: Columbia, Missouri
Contact:

Re: Google Summer of Code 2023 - Call for Ideas

Post by sliptonic »

grd wrote: Fri Feb 17, 2023 10:54 am
sliptonic wrote: Tue Feb 14, 2023 6:16 pm What do y'all think of migrating the GSoC project list to Github Issues and then creating a GSoC tag.
LGTM but I am not a member of the core team. Do you want me to do it?
Please! That would be helpful. Thank you.
grd
Posts: 328
Joined: Wed Apr 13, 2022 5:13 am
Location: Eindhoven, The Netherlands

Re: Google Summer of Code 2023 - Call for Ideas

Post by grd »

@sliptonic also the ideas that we mentioned here?

Edit: It was only the first five that needed to be done. The rest was already put into a GSoC issue.
About Nim. Latest Release 2.0.2. Here is Nim in 100 seconds and a Nim package. There are Qt and OCCT packages.
User avatar
sliptonic
Veteran
Posts: 3457
Joined: Tue Oct 25, 2011 10:46 pm
Location: Columbia, Missouri
Contact:

Re: Google Summer of Code 2023 - Call for Ideas

Post by sliptonic »

Let's create a GSoC of label and then remove the string from the title. That way issues can be added and removed from the list without changing names.
Post Reply