Introduction to Skydome Academy
I would like to greet you, dear friends. We tried to create a great curriculum for those who want to learn computer science starting from its fundamentals in a proper way. While creating this curriculum, we made use of some resources like Teach Yourself CS site. We strongly recommend you to follow this curriculum, which aims to introduce you to computer science and improve your skills. Even if you are familiar with computer science, when you apply this curriculum, you will grasp the true meaning of what you are doing.
In this article, I will talk about the things you should and should not do on this journey. I would like to share helpful advice for you on your journey to have a faster and higher quality learning process. We, who share these suggestions, are also following this curriculum. We are advancing with great excitement and passion and gain new experiences every day. We believe that these experiences we have gained can be of great benefit to you. I congratulate you for starting this journey with great courage and wish you continuous success.
Below, I will draw a road map step by step for those who want to apply this curriculum;
Step 1 — Installing Linux
We recommend that you use the archlinux operating system throughout the curriculum.
Let’s see why Arch Linux is so necessary;
- Do it yourself approach gives you the control over every aspect of your operating system,
- It works fast and stable,
- It doesn’t have unnecessary services,
- You can use latest kernel and software with rolling release model,
- Arch is created, supported and owned by community…
I want to share some links for installing arch on your computer. Maybe these links are not enough for you, so you might do some more research.
# We recommend using virtualbox while installing archlinux for those who do not have any familiarity with linux.
https://itsfoss.com/install-arch-linux/
Step 2- Supporting Apps & Extensions for Study
I will recommend some tools for you in order to be able to read the books I will mention and to do their applications in a healthy way. If possible, you might get these tools immediately after installing linux.
1-Calibre
Calibre is a great application that can run epub format books smoothly and has automatic translate feature when optimization settings are made. Calibre can use translation sites such as google translate.Thus, without copying and pasting the text, you will be able to translate quickly without wasting time. For activating this feature, you have to right click first. Then you must select <Lookup\search word> button.
You can also add more dictionaries by clicking the <Add more sources> button which you can see at the bottom right corner of the gif below.
If you select the <add more source> button, you will see a popup like this.
I suggest you to adding Tureng and Google Translate. For doing this, you must select <add> button. Then you need to fill empty spaces which you can see on the picture below.
Add whatever name you want to add. I will show you how will you take correct URL for setting up google translate. First open the google translate web site and search something on English for translating this to your target language. Then copy the URL.
After that go back to calibre and paste it to URL area.
If you want this to work you need to change the last word on URL which you were translating for like <{word}>.
Okey, you are done. Now enjoy your study!
2-Dr.Racket
While reading the Sicp book, you also have to solve some examples. Dr.racket is providing a nice user interface where you can apply these examples. It is possible to run many versions of Lisp language in this program. However, for the sicp book, it is possible to make a special installation on dr.racket and run all the examples in the book without any problems. We explained this in detail in another article. I am sharing the link below.
3-Anki
We will read books throughout the curriculum so we will get a lot of information from the books. We should review what we have learned in order not to forget it after a while. We highly recommend using the Anki app, which makes this fun. With this application, where you can also access ready-made cards, you can make what you learned permanent. I will also share a link for our friends who want to improve their English vocabulary. In this way, you will have the opportunity for both improving your English vocabulary and reviewing what you have learned about computer science by making daily study on Anki. You can also use Anki on your mobile phones.
4- Some extensions on firefox&chrome
Even though calibre is a very useful application that can run epub format books, we recommend using firefox or chrome instead of calibre for books in pdf format. This way it is also possible to actively use the autotranslate feature we have in calibre. For this, first of all, you need to upload the pdf version of the book to the drive.
After then,
-> For Firefox, you must download the Imtranslator extension. When you open the book in Drive with <Annotate with Kami>, you can activate the autotranslate feature provided by Imtranslator.
-> For google-chrome, you can use the same feature or even better with the <Google-Translate> extension. It is possible to get the performance in calibre with this extension, which looks nicer than the Imtranslator application. The book should again be opened with Annotate with Kami.
First Step Books
The first books to be read together according to the curriculum;
→The SICP book, which explains functional programming by informative examples in the scheme version of the Lisp language.
You can download SICP epub or pdf here in their links. Also follow those video lectures from UC Berkley or MIT
Based on my own experiences, I recommend a working method to my friends who read this book;
- Read the book for 1 week first, if you can progress around 100 pages a week, watch 1 video from video lecture 1 at the end of the week. Read a book every week and progress by watching 1 video and keep doing this. When you reach the end of the chapter, then instead of proceeding, watch all the videos from video lecture 2 that are related to that chapter. This way, you will repeat and consolidate what you have learned without moving to the other section. If you can progress around 50 pages a week, then watch a video every 2 weeks. When you come to the end of the chapter, watch the relevant part of the video lecture 2 videos again.
→The second book is The Elements of Computing Systems, which enables us to learn the operation of computer hardware & software deeply by creating a computer from scratch in the simulator.
Nand t.t. book →http://f.javier.io/rep/books/The%20Elements%20of%20Computing%20Systems.pdf
video lectures 1 →https://www.youtube.com/watch?v=LqirVc5SlW0&list=PLrDd_kMiAuNmSb-CKWQqq9oBFN_KNMTaI
video lecture 2 →https://www.youtube.com/watch?v=IZ5dicfkIP4&list=PLEAYkSg4uSQ0eDa24iKd7qJlsrvr8XcvF
Here is my advice;
First read the book, when you finish module 1, watch project 1 from lecture 1 videos. If you fully understand what is meant to be told, these two sources will be sufficient for you. You can start the project. If these two resources are not enough, you can get help from video lecture 2. I recommend that you follow such a method until you finish the projects.
We recommend you to study with some people who wants to learn cs, because when you are working with a group you can learn better and realize how well you understand the subjects in the syllabus. Additionally, you will be able to study in a more fun way.
While studying together you need an application to be able to watch supporting videos together with your groupmates. For this purpose you can use <Watch2Gether> . So that you can watch videos with your friends at the same time. In addition to this you can manage your room permissions, also you can pause, forward and rewind the video. For example, when you rewind the video, the videos on other people’s screens will be rewinded at the same time.
How can you use Watch2Gether?
It is very simple. First you must open a new room and send invitation link to your friends. After that you have to get the video’s link which you want to open. Then paste the link to search bar which is located on the top middle of the watch2gether website.We marked it with red color on the screenshot below.
After these steps you should see some videos on search result. Select the video which you want to watch.
It is done. Now enjoy your video!
➥A second option is ‘Discord’. It may be a good idea for a friend to share your screen with you while talking to friends through this app.
What is Discord and how to use it?
Discord is a voice and written communication program developed for players playing computer games. But today it is quite widely used by many different communities. Discord can run on Windows, macOS, Linux, iOS, Android and web browser.
Discord is a voice and written communication program developed for players playing computer games. But today it is quite widely used by many different communities. Discord can run on Windows, macOS, Linux, iOS, Android and web browser.
Discord is a completely free application, but you can get certain advantages by giving money, this is an option that depends entirely on you.
I’ll try to explain, you can talk in 384Kbps audio quality on a server with Level 3 perks without giving money and you can upload 100MB to that servers. But on a server with Default features, you can talk in 96Kbps audio quality and upload up to 8MB of files.
Now you’re in a discord server room with your friend and you’re talking, now you’re wondering how you should share a screen with each other.
➥In the image, you need to press the screen section at the bottom right, and then you can share a special app or your complete screen with your friends. You can also access additional screen sharing benefits(resolution and FPS) by paying a certain monthly fee.
➥In the free option, 1080p, source and 60Fps options are not active.
❗➥ I want to talk an important point here, if you share your screen with your friend, your friends see what you see on the screen without any image problems while you browse through apps, but your friends don’t get audio transmitted. For example, if you are going to watch a video on Youtube and want the audio to be transmitted to your friends, it would be more accurate to select your browser as an application when sharing images with your friends. Here you must decide what you should choose, depending on your study.
→ The third book is The Goal, which enables us to learn business management and planning, the right relationships with colleagues and increasing productivity. The Goal is a personal development novel that we can learn business and ongoing process. Just read it and improve yourself.
Schedule Advice
The first thing you should do after the above-mentioned installations are completed is to set up a rigorous study schedule. Since the program is heavy and the number of books to be read is more than 10, a serious study should be done. As someone, who is starting the program, you should be determined, patient and willing.
Before starting to make schedule, we must decide how much time you can devote to this curriculum. After deciding this, you can apply the plan that is suitable for you by looking at the table below. While creating this table, we decided by thinking the projects which you will do in the future. We combined what you learned in the Sicp book with Nand to tetris in addition to the examples in the book, and planned so that we could make a comprehensive project together.