These are chat archives for learnclang/general
Is there a specific reason to do that? I mean to take an address and downloads a file off the internet?
Good that you ask, actually I'm struggling to find what to make for a next project, because while I'm trying to keep it doable and simple, I'd also like it to be interesting and it's a tough balance.
I think that downloading a file might require us to use at least one additional library in C and it will also get us going with how to provide input to an executable.
I also think it's good to talk about the next direction, so we're ready to move on once finished. So if you or anyone have any other ideas, let us know here. :)
@csaez don't know if you guys are following the handmadehero project
Hi @csaez! Looks like an interesting project, haven't heard of it before. Checking it out now, and adding it to here: https://github.com/learnclang/about/wiki/Resources
@davidmartinezanim I felt that VS requires a lot of setup before you do anything
Yeah, this has been my impression too. Some tutorials online even suggest you don't touch an IDE until you've got a firm grasp of coding without one, like this one: http://c.learncodethehardway.org/book/ex0.html
The Handmade Hero videos seem amazing! My only gripe would be that it is using the Windows API, but I'm seeing a chapter on platform-independence, but haven't gotten far enough to see whether it actually means to run on OSX/Linux at all.
I love that he's doing all rendering without libraries (OpenGL/DirectX), I haven't even considered that to be possible to be honest.
@mottosso The Handmade Hero videos seem amazing! My only gripe would be that it is using the Windows API, but I'm seeing a chapter on platform-independence, but haven't gotten far enough to see whether it actually means to run on OSX/Linux at all.
There is a platform independent layer that will eventually be changed to run the game on other platforms, but the main focus is Windows >= XP (there're people working on unofficial ports to the various operating systems, check the resources section on handmadehero website).
yep... compose mode :P (thanks!)
@mottosso What about having a simple project in which inputs a couple of vectors and calculates the angle between them? or do some operation with them? No visual representation for the time being but purely based on text. This might be a good way to force ourselves to revisit some of our math theory... (just a thought)
This should be doable with the standard library.
There is a platform independent layer that will eventually be changed to run the game on other platforms, but the main focus is Windows >= XP
Ah, I get it now. Did some more research and he mentions on the main website that it's built on Windows first and then expanded upon to run on other platforms. That's perfect.
@davidmartinezanim What about having a simple project in which inputs a couple of vectors and calculates the angle between them?
We could do that, but I personally think it's a little too academic and I'd rather keep projects as practical as possible. I'd would be okay jumping directly into producing a window and drawing into it. Especially now that we have access to the handmadeheroes.org tutorials.
What do you think?
I think we should cover at least pointers, structs and memory allocation first,
Agreed. Let's try and find a practical project which requires these things next.
@mottosso Can you think of anything, @csaez?
Not off the top of my head, but I'll think of something.
Just to be clear: I'm not a "C/C++ guy" by any means.
Here is wikipedia's take on build automation: http://en.wikipedia.org/wiki/Build_automation
Advanced build automation offers remote agent processing for distributed builds and/or distributed processing. The term "distributed builds" means that the actual calls to the compiler and linkers can be served out to multiple locations for improving the speed of the build. This term is often confused with "distributed processing".
Distributed processing means that each step in a process or workflow can be sent to a different machine for execution. For example, a post step to the build may require the execution of multiple test scripts on multiple machines. Distributed processing can send the different test scripts to different machines. Distributed processing is not distributed builds. Distributed processing cannot take a make, ant or maven script, break it up and send it to different machines for compiling and linking.
The distributed build process must have the machine intelligence to understand the source code dependencies in order to send the different compile and link steps to different machines. A build automation tool must be able to manage these dependencies in order to perform distributed builds. Some build tools can discover these relationships programmatically (Rational ClearMake distributed, Electric Cloud ElectricAccelerator), while others depend on user-configured dependencies (Platform LSF lsmake)
Build automation that can sort out source code dependency relationships can also be configured to run the compile and link activities in a parallelized mode. This means that the compiler and linkers can be called in multi-threaded mode using a machine that is configured with more than one core.
Not all build automation tools can perform distributed builds. Most only provide distributed processing support. In addition, most products that do support distributed builds can only handle C or C++. Build automation products that support distributed processing are often based on make and many do not support Maven or Ant.
The deployment task may require configuration of external systems, including middleware. In cloud computing environments the deployment step may even involve creation of virtual servers to deploy build artifacts into.