Хотите Git Workshop от ACM SC? :)
anonymous poll
Yeap – 44
👍👍👍👍👍👍👍 98%
No – 1
▫️ 2%
👥 45 people voted so far.
anonymous poll
Yeap – 44
👍👍👍👍👍👍👍 98%
No – 1
▫️ 2%
👥 45 people voted so far.
#advice from @KtlTheBest
Many beginner programmers worry about not understanding the inner workings of a programming language. Of course, that leads to lots of confusion and stress. Some get discouraged from studying the language further. We want to try and give you some advice on how to deal with difficulties in your Computer Science course.
You may be tempted to stick mostly to the books and lectures. THIS IS A TRAP. Here's an analogy. You will not be able to ride a bicycle if someone told you how to do it. You need to actually do the work and PRACTICE, gain that sweet muscle memory. Same goes for programming. Get your hands dirty. Most likely, you will get stuck at some point, and at that point, you will grow. How exactly? Get a piece of paper and try visualizing your problem. Use StackOverflow. Contact your professor. Use the book as reference only, don't waste your time and energy reading it like Harry Potter.
It is crucial for you to get out of your comfort zone, and challenge yourself with problems that feel difficult to solve. Yet, don't underestimate the 'easy' problems. You might feel like you can solve them mentally, but this is a trap. You need to periodically resolve old problems to keep that brain-muscle memory fresh.
Useful article: https://www.codementor.io/learn-programming/how-to-learn-to-code-fast.
If you have questions, you may want to try our P2P (Peer-To-Peer) sessions from ACM SC.
Many beginner programmers worry about not understanding the inner workings of a programming language. Of course, that leads to lots of confusion and stress. Some get discouraged from studying the language further. We want to try and give you some advice on how to deal with difficulties in your Computer Science course.
You may be tempted to stick mostly to the books and lectures. THIS IS A TRAP. Here's an analogy. You will not be able to ride a bicycle if someone told you how to do it. You need to actually do the work and PRACTICE, gain that sweet muscle memory. Same goes for programming. Get your hands dirty. Most likely, you will get stuck at some point, and at that point, you will grow. How exactly? Get a piece of paper and try visualizing your problem. Use StackOverflow. Contact your professor. Use the book as reference only, don't waste your time and energy reading it like Harry Potter.
It is crucial for you to get out of your comfort zone, and challenge yourself with problems that feel difficult to solve. Yet, don't underestimate the 'easy' problems. You might feel like you can solve them mentally, but this is a trap. You need to periodically resolve old problems to keep that brain-muscle memory fresh.
Useful article: https://www.codementor.io/learn-programming/how-to-learn-to-code-fast.
If you have questions, you may want to try our P2P (Peer-To-Peer) sessions from ACM SC.
www.codementor.io
How to Learn to Code, Fast | Codementor
When learning to code, here
#events
Приглашение на Startup Weekend: Sustainable city development.
С 9 по 11 ноября, в Астане пройдет Startup Weekend: Sustainable city development.
Это четвертое заключительное мероприятие в рамках проекта Astana Innovation Challenge.
Общий призовой фонд – 1 миллион тенге.
К участию приглашаются все желающие.
У вас может не быть команды или идеи – на мероприятии сформируются команды, которые в течении трех дней будут работать над поставленными задачами.
Startup Weekend пройдет в рамках международного проекта Global Startup Celebration под эгидой Techstars. В неделе предпринимательства участвуют более 200 городов мира и 15 000 предпринимателей.
РЕГИСТРАЦИЯ: http://astanaic.kz
Дата: 9-11 ноября
Место: Астана, Astana Hub (Мангилик Ел проспект, С4.6)
Мероприятие организовано акиматом Астаны и АО «Astana Innovations». Партнерами выступили Бизнес-инкубатор MOST, «3.2.1. Старт!», Microsoft и Фонд первого Президента РК.
Приглашение на Startup Weekend: Sustainable city development.
С 9 по 11 ноября, в Астане пройдет Startup Weekend: Sustainable city development.
Это четвертое заключительное мероприятие в рамках проекта Astana Innovation Challenge.
Общий призовой фонд – 1 миллион тенге.
К участию приглашаются все желающие.
У вас может не быть команды или идеи – на мероприятии сформируются команды, которые в течении трех дней будут работать над поставленными задачами.
Startup Weekend пройдет в рамках международного проекта Global Startup Celebration под эгидой Techstars. В неделе предпринимательства участвуют более 200 городов мира и 15 000 предпринимателей.
РЕГИСТРАЦИЯ: http://astanaic.kz
Дата: 9-11 ноября
Место: Астана, Astana Hub (Мангилик Ел проспект, С4.6)
Мероприятие организовано акиматом Астаны и АО «Astana Innovations». Партнерами выступили Бизнес-инкубатор MOST, «3.2.1. Старт!», Microsoft и Фонд первого Президента РК.
#advice by @trustem17
🔹Most people will tell you "Go to XYZ website, sort problems by graph theory and start practicing". This has to be done any way for any topic. Let me tell you something more interesting. In this answer, I shall try to throw light on how you build intuition about graph problems and how you can know which approach to take. Let's go step wise:
🔹Read the question very carefully for determining what type of graph it is:
This is the first and probably one of the most important steps. The question will tell you whether the graph is a tree, or it is a graph with only one cycle, or multiple disjoint cycles, or just a random graph. A tree has so many nice properties that you can exploit. There are subtle ways of saying that the given graph is a tree. For example: "The graph has N nodes. It is not disjoint and has N-1 edges", "The graph doesn't contain any cycles", "In the given directed graph, each node has one and only one parent", etc. Similarly, if there is only one cycle, then you can imagine the graph as having a ring with many trees hanging from the nodes of the ring.
🔹Once the graph has been identified, identify what the question wants from you:
In this step, you try to figure out what is it that the question wants you to do. Does it have something to do with shortest paths? If yes, then are all the weights positive? If not, then clearly it can't be direct Dijkstra. What else can we do? Bellman Ford? Floyd-Warshall? You should be able to eliminate approaches fast.
🔹Graph problems can also include simple traversal, flows, disjoint unions, etc. The best way to figure out what is applicable is method of elimination. The size of input data tells a lot about the algorithm to be used. This is because graph algorithms span the whole range of complexities, from linear to exponential. So, if you know you need a linear or a quasi-linear algorithm for the given size of input, you can simply eliminate many of the algorithms.
🔹If you have identified that the graph is not a tree, a lot of algorithms can further be eliminated like heavy-light decomposition, dynamic programming on trees, centroid decomposition, etc, unless the question allows you to form a tree of biconnected components.
🔹Coming up with an algorithm to solve the problem:
Once you have identified what the question is asking you to do, and what is the basic algorithm that is going to be used, the last step is to come up with a working solution. The best way according to me is to solve the problem with pen and paper. You construct small graphs of the kind that the question puts out, and you try to apply the techniques that you shortlisted from the previous section. This is because graph algorithms generally are quite good at scalability. What this means is that if you observe a particular property for a small graph that you draw on paper, it is highly likely that the property will be true for similar graphs of any size . So, by trying out techniques on paper, you can get to a solution in most of the cases.
🔹Coding graph problems:
Graph problems are generally code intensive. But they follow a very standard pattern. This is the point where practice comes in. You need to code quite a few graph problems before you reach a stage of mastery. The biggest hurdle is coding what you have visualised since graph problems tend to be more abstract in nature than something like data structures or greedy algorithms. There is only one way to work around this hurdle: practice. The more you code, the better you become with putting your visualisation on to your editor.
Author: Pushkar Mishra
🔹Most people will tell you "Go to XYZ website, sort problems by graph theory and start practicing". This has to be done any way for any topic. Let me tell you something more interesting. In this answer, I shall try to throw light on how you build intuition about graph problems and how you can know which approach to take. Let's go step wise:
🔹Read the question very carefully for determining what type of graph it is:
This is the first and probably one of the most important steps. The question will tell you whether the graph is a tree, or it is a graph with only one cycle, or multiple disjoint cycles, or just a random graph. A tree has so many nice properties that you can exploit. There are subtle ways of saying that the given graph is a tree. For example: "The graph has N nodes. It is not disjoint and has N-1 edges", "The graph doesn't contain any cycles", "In the given directed graph, each node has one and only one parent", etc. Similarly, if there is only one cycle, then you can imagine the graph as having a ring with many trees hanging from the nodes of the ring.
🔹Once the graph has been identified, identify what the question wants from you:
In this step, you try to figure out what is it that the question wants you to do. Does it have something to do with shortest paths? If yes, then are all the weights positive? If not, then clearly it can't be direct Dijkstra. What else can we do? Bellman Ford? Floyd-Warshall? You should be able to eliminate approaches fast.
🔹Graph problems can also include simple traversal, flows, disjoint unions, etc. The best way to figure out what is applicable is method of elimination. The size of input data tells a lot about the algorithm to be used. This is because graph algorithms span the whole range of complexities, from linear to exponential. So, if you know you need a linear or a quasi-linear algorithm for the given size of input, you can simply eliminate many of the algorithms.
🔹If you have identified that the graph is not a tree, a lot of algorithms can further be eliminated like heavy-light decomposition, dynamic programming on trees, centroid decomposition, etc, unless the question allows you to form a tree of biconnected components.
🔹Coming up with an algorithm to solve the problem:
Once you have identified what the question is asking you to do, and what is the basic algorithm that is going to be used, the last step is to come up with a working solution. The best way according to me is to solve the problem with pen and paper. You construct small graphs of the kind that the question puts out, and you try to apply the techniques that you shortlisted from the previous section. This is because graph algorithms generally are quite good at scalability. What this means is that if you observe a particular property for a small graph that you draw on paper, it is highly likely that the property will be true for similar graphs of any size . So, by trying out techniques on paper, you can get to a solution in most of the cases.
🔹Coding graph problems:
Graph problems are generally code intensive. But they follow a very standard pattern. This is the point where practice comes in. You need to code quite a few graph problems before you reach a stage of mastery. The biggest hurdle is coding what you have visualised since graph problems tend to be more abstract in nature than something like data structures or greedy algorithms. There is only one way to work around this hurdle: practice. The more you code, the better you become with putting your visualisation on to your editor.
Author: Pushkar Mishra
Will you come? :)
anonymous poll
Yes, ofc – 13
👍👍👍👍👍👍👍 72%
Definitely – 5
👍👍👍 28%
👥 18 people voted so far.
anonymous poll
Yes, ofc – 13
👍👍👍👍👍👍👍 72%
Definitely – 5
👍👍👍 28%
👥 18 people voted so far.
#advice by @ailanaaskar
Помимо open-source проектов, есть еще один способ набраться опыта и прокачать свой скилл программирования.
Сhallenge "100 days of code" будет оптимальным вариантом для ежедневной практики, даже если вы совсем новичок.
Что это такое? Это вызов, суть которого состоит в 100 днях ежедневного кодинга. Задания, язык и направление вы выбираете сами, так что сойдут даже начальные задачи с Hackerrank-a. Каждый день нужно будет коммитить (ака submit) свой код на свою страничку Github, чтобы отмечать ваш прогресс.
Что это дает? Мотивацию не прокрастинировать, опыт, развитие и хорошее резюме!
Для новичка в программировании это отличный старт, а для более продвинутых ребят это эффективная платформа для ежедневной практики.
Правила участия указаны на странице самого сhallenge-а:
https://www.100daysofcode.com/
Помимо open-source проектов, есть еще один способ набраться опыта и прокачать свой скилл программирования.
Сhallenge "100 days of code" будет оптимальным вариантом для ежедневной практики, даже если вы совсем новичок.
Что это такое? Это вызов, суть которого состоит в 100 днях ежедневного кодинга. Задания, язык и направление вы выбираете сами, так что сойдут даже начальные задачи с Hackerrank-a. Каждый день нужно будет коммитить (ака submit) свой код на свою страничку Github, чтобы отмечать ваш прогресс.
Что это дает? Мотивацию не прокрастинировать, опыт, развитие и хорошее резюме!
Для новичка в программировании это отличный старт, а для более продвинутых ребят это эффективная платформа для ежедневной практики.
Правила участия указаны на странице самого сhallenge-а:
https://www.100daysofcode.com/
100Daysofcode
#100DaysOfCode
The Official Website for the Challenge
Forwarded from NU ACM-W Student Chapter
Dear everyone!
Would you like to know how to get an internship at Google or Mozilla?
🤓🖥 💃🏻
If yes, then we have good news for you! ✨🌟
ACM-W is delighted to invite you to the Internship Talks with two junior CS students who will share their experience and give valuable tips to you!
- Assiya Khuzyakhmetova, Chair of ACM-W - Outreachy internship with Mozilla
- Aishabibi Adambek, Vice-Chair of ACM-W – Google STEP internship
Date: 15 November, Thursday
Time: 18:30
Venue: 9.105
Everyone is welcome!
Would you like to know how to get an internship at Google or Mozilla?
🤓🖥 💃🏻
If yes, then we have good news for you! ✨🌟
ACM-W is delighted to invite you to the Internship Talks with two junior CS students who will share their experience and give valuable tips to you!
- Assiya Khuzyakhmetova, Chair of ACM-W - Outreachy internship with Mozilla
- Aishabibi Adambek, Vice-Chair of ACM-W – Google STEP internship
Date: 15 November, Thursday
Time: 18:30
Venue: 9.105
Everyone is welcome!
Dear NU community!
Do you want to improve coding skills? Are you interested in joining the hacker community? Would you like to get valuable experience, collaboration with other students and attend exclusive workshops?👩🏻💻👨🏻💻
If yes, then we have good news for you!
ACM Student Chapter is delighted to announce that registration for <Local Hack Day> is now open!
-What is Local Hack Day?
-Local Hack Day is a global hackathon and celebration of learning, building, and sharing! The event is learning focused invention marathon where participants dream up fun, interesting projects and work in small teams to bring them to life over the course of the event. Along with this, you can attend various educational workshops, and, of course, make new friends! Local Hack Day is supported by GitHub and Microsoft.
Link for registration:
https://localhackday.mlh.io/lhd-2018/events/665-…
Date, time & place:
December 2nd, 2018.
10:00 am – 10:00 pm.
Block 5, Room 103.
Do you want to improve coding skills? Are you interested in joining the hacker community? Would you like to get valuable experience, collaboration with other students and attend exclusive workshops?👩🏻💻👨🏻💻
If yes, then we have good news for you!
ACM Student Chapter is delighted to announce that registration for <Local Hack Day> is now open!
-What is Local Hack Day?
-Local Hack Day is a global hackathon and celebration of learning, building, and sharing! The event is learning focused invention marathon where participants dream up fun, interesting projects and work in small teams to bring them to life over the course of the event. Along with this, you can attend various educational workshops, and, of course, make new friends! Local Hack Day is supported by GitHub and Microsoft.
Link for registration:
https://localhackday.mlh.io/lhd-2018/events/665-…
Date, time & place:
December 2nd, 2018.
10:00 am – 10:00 pm.
Block 5, Room 103.
Dear students, if you have problems with registration for Local Hack Day, please, use VPN! Sorry for any inconveniences :)
Hello everyone!
For those of you who have registered for the Local Hack Day, this is a kind reminder that the event will take place tomorrow!
Here is the schedule for the event:
09:00 – 10:00 Registration
10:00 – 10:30 Opening speech & start of the hackathon
13:00 – 14:00 Lunch break
20:00 – 22:00 Presentations of projects
22:00 – 23:00 Closing ceremony and awards
Moreover, along with the competition, workshops will be held. To participate, you should have:
1. Git (Git Bash/Shell for Windows).
2. Confirmed account on GitHub.
3. Installed Python IDE, and connected Tensorflow, Pandas, Matplotlib, Numpy.
For those of you who have registered for the Local Hack Day, this is a kind reminder that the event will take place tomorrow!
Here is the schedule for the event:
09:00 – 10:00 Registration
10:00 – 10:30 Opening speech & start of the hackathon
13:00 – 14:00 Lunch break
20:00 – 22:00 Presentations of projects
22:00 – 23:00 Closing ceremony and awards
Moreover, along with the competition, workshops will be held. To participate, you should have:
1. Git (Git Bash/Shell for Windows).
2. Confirmed account on GitHub.
3. Installed Python IDE, and connected Tensorflow, Pandas, Matplotlib, Numpy.
#jobs
Вас приветствует образовательный центр TrustonEducation!
Требуется backend-разработчик в качестве долевого партнера в команду по созданию соревновательной мобильной игры по изучению английского языка
Центр работает уже более 4-х лет, и на данный момент у нас действует 2 офис на левом и на правом берегу. Наш центр занимается обучение студентов английскому языку и подготовке к международным экзаменам таким как IELTS/SAT/HSK. Также мы ежегодно отправляем десятки студентов по программам бакалавра и магистратуры в такие страны, как Китай, Чехия, Малайзия и Корея.
Сейчас мы работаем над созданием мобильного приложения для выходы на зарубежные рынки и активно ищем разработчика в нашу команду.
Обязанности:
Разработка серверной
Разработка игровой механики
Разработка мобильного приложения
Работа с базами данных
Дорабатывать, сопровождать, диагностировать и устранять неисправности существующих модулей
Требования:
Опыт реализации одного или двух схожих с нашим проектов как Middle разработчик
Знание языка программирования Java (либо Python/PHP)
Владение языком SQL
Владение технологией GIT
Умение построить внятную архитектуру БД
Базовые навыки работы в ОС Linux
Владение языком Java для разработки приложения на Android
Приветствуется владение Java script
Знание английского языка на уровне чтения технической документации
Высокая работоспособность, Ответственность, Дисциплинированность
Условия:
Доля в перспективном проекте
Размещение в AstanaHub (Международный технопарк IT-стартапов)
Заинтересованным писать +77711933398
Вас приветствует образовательный центр TrustonEducation!
Требуется backend-разработчик в качестве долевого партнера в команду по созданию соревновательной мобильной игры по изучению английского языка
Центр работает уже более 4-х лет, и на данный момент у нас действует 2 офис на левом и на правом берегу. Наш центр занимается обучение студентов английскому языку и подготовке к международным экзаменам таким как IELTS/SAT/HSK. Также мы ежегодно отправляем десятки студентов по программам бакалавра и магистратуры в такие страны, как Китай, Чехия, Малайзия и Корея.
Сейчас мы работаем над созданием мобильного приложения для выходы на зарубежные рынки и активно ищем разработчика в нашу команду.
Обязанности:
Разработка серверной
Разработка игровой механики
Разработка мобильного приложения
Работа с базами данных
Дорабатывать, сопровождать, диагностировать и устранять неисправности существующих модулей
Требования:
Опыт реализации одного или двух схожих с нашим проектов как Middle разработчик
Знание языка программирования Java (либо Python/PHP)
Владение языком SQL
Владение технологией GIT
Умение построить внятную архитектуру БД
Базовые навыки работы в ОС Linux
Владение языком Java для разработки приложения на Android
Приветствуется владение Java script
Знание английского языка на уровне чтения технической документации
Высокая работоспособность, Ответственность, Дисциплинированность
Условия:
Доля в перспективном проекте
Размещение в AstanaHub (Международный технопарк IT-стартапов)
Заинтересованным писать +77711933398
#jobs
У тебя есть опыт в сфере Mobile Development-a, а именно iOS разработка (front and back end)? Ищешь другие пути развития? Тогда присоединяйся к нам. Мы- амбициозный инновационный стартап Ayala, состоящий в акселерационной программе Астана Хаба. У нас сейчас нет возможности выплачивать зарплату, но в будущем при росте дохода, этот вопрос будет решён. Если ты ответственный кандидат и это предложение заинтересовало- пиши в личку в Telegram @marua_i
У тебя есть опыт в сфере Mobile Development-a, а именно iOS разработка (front and back end)? Ищешь другие пути развития? Тогда присоединяйся к нам. Мы- амбициозный инновационный стартап Ayala, состоящий в акселерационной программе Астана Хаба. У нас сейчас нет возможности выплачивать зарплату, но в будущем при росте дохода, этот вопрос будет решён. Если ты ответственный кандидат и это предложение заинтересовало- пиши в личку в Telegram @marua_i