Giter Site home page Giter Site logo

swppfall2021's Introduction

M1522.002400 Principles and Practices of Software Development

Announcements

  • HW1 out: 9/2 (Thur); due 9/10 (Fri) 6pm
  • HW2 out: 9/9 (Thur); due 9/17 (Fri) 6pm
  • Team formation due 9/12 (Sun) 6pm
  • HW3 out: 9/17 (Fri); due 10/7 (Thur) 6pm (Feature), 10/14 (Thur) 6pm (Testing)
  • Project proposal due 9/24 (Fri) 6pm
  • HW4 out: 10/15 (Fri); due 11/4 (Thur) 6pm

Please follow the guideline in this link.

Schedule (TBD)

There may be some changes to the schedule.

Week Lecture Practice Session Homework / Project / Exam
9/2 Course overview Environment Setup + Python + HTML/Javascript (DOM) HW1 out 9/2
9/7,9 Challenges to make software; Version control Git HW2 out 9/9,
HW1 due 9/10 6pm,
Team formation due 9/12 (Sun) 6pm
9/14,16 SaaS architecture; Building software; ORM React HW2 due 9/17 6pm,
HW3 out 9/17
9/23 Project sprints; Requirements and specification; Redux Project proposal due 9/24 6pm
9/28, 30 Testing Frontend Testing (Jest + Enzyme)
10/5,7 Software development process; Design patterns Frontend Q&A Project sprint 1 begin (bi-weekly meetings with TAs at the end of sprint),
HW3(feature) due 10/7 6pm
10/12,14 Taming complexity; defensive programming; Design patterns Django HW3(testing) due 10/14 6pm
10/19,21 Design patterns Django + Python Testing HW4 out 10/15,
Project sprint 2 begin
10/26,28 Design patterns; code refactoring Integration + CI + SonarCloud
11/2,4 Operation Design Pattern HW4 due 11/4 6pm,
Project sprint 3 begin
11/9,11 Operation, Mid-presentation Project Mid Presentation The mid presentation session will be on 11/11.
11/16,18 ML pipeline Deployment Project sprint 4 begin
11/23,25 ML pipeline Code Refactoring + Optimization
11/30,12/2 Operation Final Exam 12/2 Coding exams (Minimum 4 hours),
Project sprint 5 begin
12/7,9 TBD Testing Session
12/17 Project poster session Project final report (due 12/17 6pm)

Online Office Hours

Professor :

  • Office: Bldg. 302, Rm. 322
  • Tue, Thur 15:30-16:30, by appointment (TBD)

TAs :

Donghyun Kim

  • Email: [email protected]
  • Office: Bldg. 302, Rm. 420
  • Office hour: Monday 16:00~17:00 (TBD)

Changjin Jeong

  • Email: [email protected]
  • Office: Bldg. 302, Rm. 420
  • Office hour: Monday 16:00~17:00 (TBD)

Soyoung Jung

  • Email: [email protected]
  • Office: Bldg. 302, Rm. 420
  • Office hour: Monday 16:00~17:00 (TBD)

(Please send TAs an email ahead of time, we can set up a specific time and place)

Project Teams

swppfall2021's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

swppfall2021's Issues

Kakaotalk Openchat for Team Building

Hello. My name is Manhyung Han.
Since the previous openchat created by Jungmin Cho has been closed, I decided to create a new one to help people form teams and share ideas. I hope this chatroom helps everyone share thoughts together and form teams with each other.
When you enter, please make sure your chat name is of the form (name) / (major) / (programming level : 상, 중, 하) / (kakaotalk id)
ex : 한만형 / 전기 / 중 / hanmanhyung

안녕하세요 한만형입니다.
조정민 님이 전에 만들어 주신 오픈채팅방이 닫혀서 제가 다른 오픈채팅방을 하나 만들게 되었습니다.
자유롭게 들어오셔서 이야기 나누시고 팀 구성하는 데 도움이 되었으면 좋겠습니다.
들어오실 때 아이디는 (이름) / (전공) / (프로그래밍 수준 : 상, 중, 하) / (카카오톡 ID) 형식으로 해주세요.
예 : 한만형 / 전기 / 중 / hanmanhyung

https://open.kakao.com/o/gNDlfJxd

Looking for Teammates

Hello! My name is Jaeyeon Kim.
I'm now in a team with 2 members, and looking for other teammates.
To briefly introduce ourselves, we don't have much experience for web programming, but have considerable experience for programming itself and machine learning, especially can deal with most of audio and NLP tasks.

If you want to know about more information, or want to join us, feel free to contact me through ETL message or kakaotalk. My kakaotalk ID is as following: jaeyeonkim99

Thank you.

Teammate

Hello Everyone!

I was wondering is there someone who still could not make a team? or a team who needs a member?

Please contact me here or on ETL and we can talk about it.

Thank you.

catches FileNotFoundError in BabynameFileNotFoundException

Hello, I had problem while catching Exceptions.
My program catches FileNotFoundError and raises BabynameFileNotFoundException in try-except statement, but it prints FileNotFoundError too. Is it right that FileNotFoundError should not be printed? Thank you.

Traceback (most recent call last):
FileNotFoundError: [Errno 2] No such file or directory: '/babydata/1990.html'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
    raise BabynameFileNotFoundException(errorMsg)
babyname_parser.BabynameFileNotFoundException: No such file: /babydata/1990.html

Question about practice session 3

I forked from Agly/swpp-react-tutorial instead of chang-jin/swpp-react-tutorial at the beginning of my practice.
I somehow filled in src directory and completed the assignment.
When making a pull request, I manually changed the destination to chang-jin/~~ instead of Agly/~~, which was the default destination for me. Is it okay to do so?
Thank you.

Question about hw2 csv file header

Are headers in csv files always in the following order: year, rank, name, gender, rank change?

Or can be ordered like 'rank, year, rank change, gender, name' or something?

Question about input csv data in hw2

//you should NOT assume the number of total rows in the csv file or the "data sequence (e.g., rank order)."

Can we assume that the input csv data always have rank 1?

I mean, if I sort the data by rank order, first rank is always rank 1?

Teammates

Hi, I'm Tumi.
I'm in a group of 2 and we're looking to join 2 more people to form a group, please kindly reach out to me here or on KakaoTalk if you're interested. My ID is teenorla.

Question about rankChange of records.

It seems that the value type for the rankChange key of each element of the global variable records is ambiguous.
Does it have to be a Number type? Or are other types like String okay?

question about 'special character'

In hw2, handleSignUpFormSubmit function have to check the validity of the values.

There's a description about Email as below:

  • characters mean one or more characters including alphabets, numbers or special characters.

Can you explain more detail about that 'special characters'?
Thank you in advance.

Questions about BabynameFileNotFoundException in babyname_parser.py

I have a question about BabynameFileNotFoundException in babyname_parser.py file.(HW1)

After applying decorated function check_file_name_existence with inner function try_check_filename, there comes a prior error before BabynameFileNotFoundException is raised. And the sentence "During handling of the above exception, another exception occurred:" appears with the exception.
Is it okay since it raised the right exception anyway or should I also handle the prior error?

I'm looking forward to your reply, thank you.

parser = BabynameParser("/home/yebin/Desktop/SSPP/swpp-hw1-yeppin/babydata", 1900)
Traceback (most recent call last):
  File "/home/yebin/Desktop/SSPP/swpp-hw1-yeppin/babyname_parser.py", line 40, in try_check_filename
    func(a,b,c)
  File "/home/yebin/Desktop/SSPP/swpp-hw1-yeppin/babyname_parser.py", line 64, in __init__
    f = open('{0}/{1}.html'.format(self.dirname,self.year),'r')
FileNotFoundError: [Errno 2] No such file or directory: '/home/yebin/Desktop/SSPP/swpp-hw1-yeppin/babydata/1900.html'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/yebin/Desktop/SSPP/swpp-hw1-yeppin/babyname_parser.py", line 44, in try_check_filename
    raise BabynameFileNotFoundException("No such file: {}".format(filename))
babyname_parser.BabynameFileNotFoundException: No such file: /home/yebin/Desktop/SSPP/swpp-hw1-yeppin/babydata/1900.html

A question about HW3.

Hello, i have a question about HW3, about creating article.
I found out the articles' ids in db are not continuous.
In case of that, what should the number be when we create a new article? Should it be 1 or 21?

Thanks in advance.

Slow VM

Am I the only one with a really slow virtual machine here?
I did all the changes but it is still kinda slow and inconvenient to use. T T
Does anyone have an idea? please share

Argument of __init__ function in BabynameParser class

def __init__(self, dirname, year):
    """
    (3 points)
    Given directory path and year, extracts the name of a file to open the corresponding file
    and a list of the (rank, male-name, female-name) tuples from the file read by using regex.
    [('1', 'Michael', 'Jessica'), ('2', 'Christopher', 'Ashley'), ....]

    Args:
        dirname (str): The name of the directory where baby name html files are stored.
        year (int): The target year to parse.
    """

I am curious that arg dirname is consist of all pathes or just the name of the directory.
For example including all path dirname = ": C:\Users\82105\Desktop\swppfall2021-main\swppfall2021-main\hw1\babydata" or "\babydata"
If just including "the name of the dir" then dirname = "babydata".

This is confusing because of the following example shows as dirname is including all pathes wheares skeleton seems like meaning name of the directory.
Following is the example output posted on swppfall.hw1 readme.md page.

from babyname_parser import BabynameParser
parser = BabynameParser("/{YOUR_HW_PATH}/babydata", 2001)
parser.year
'2001'
parser.rank_to_names_tuples
[('1', 'Jacob', 'Emily'), ('2', 'Michael', 'Madison'), ('3', 'Matthew', 'Hannah'), ...]
parser.parse(lambda rank_to_names_tuple: rank_to_names_tuple[0])
['1', '2', '3', '4', '5', '6', '7', '8', '9', '10', ...]
BabynameParser("/{YOUR_HW_PATH}/babydata", 1900)
Traceback (most recent call last):
File "", line 1, in
File "babyname_parser.py", line 61, in decorated
raise BabynameFileNotFoundException("No such file: {}".format(filename))
babyname_parser.BabynameFileNotFoundException: No such file: /{YOUR_HW_PATH}/babydata/1900.html`

  1. Also want to confirm that BabynameFileNotFoundException's error message should contain all file path or just the name of the directory.

  2. Finally want to make sure that if i use \ instead of / in python? I'm using window os, path represents in C:\Users\82105\Desktop\swppfall2021-main\swppfall2021-main\hw1 format not in / format.

  3. It is not related question but want to make it clear...
    .idea , pycache, README>md should not be included in submission root directory?

Ways to speed up your VMs

For the students who are having trouble using slow VMs, Please check the following to speed up your virtual machine.

  1. Resource allocated to the VM
    There is no specific resource required, but the suggested amount of resources can be found in the post below:
    https://www.addictivetips.com/ubuntu-linux-tips/improve-linux-performance-in-a-virtualbox-vm/
  2. Try enabling the acceleration setting if you are using VirtualBox.
    https://blogs.oracle.com/scoter/oracle-vm-virtualbox-61-3d-acceleration-for-ubuntu-1804-and-2004-virtual-machines

If you still have a problem using VMs, another option is to install Ubuntu alongside your OS (e.g., Windows 10).
Leave any questions in the comment, if any.

Finding teammates

Hi. I'm Jong-Hyon Kim, and i'm majoring in CSE. I'm finding teammates to work together. I have never tried Web Programming before, but I'm quite familiar with C++ and Python. Especially in Python, I have an experience for making my own rogue-like game. Although I do not have much knowledge about Web, I'm ready to learn and develop myself. If you are interested in making a team with me, just send a message to me. I'll check it as fast as I can. My Kakaotalk ID is "bell_string". Thank you.

About handleSignUpFormSubmit function

I have a question about the birth date format.
If we use the regex expression to validate the date format, some invalid cases could occur.
Such as 2011-11-31. Is it a valid birthdate format in this homework?

Unnecessary IDE config files or cache files on Github Submission

Some cache files like pycache or IDE config files like .idea are uploaded together on my hw1 github submission page.

Do I need to delete all of these files?

Also, is it ok to use .gitignore to prevent upload of unnecessary files from next homework?

I just wonder if there are any files that should never be included.

(Specifically, the example file structure doesn't even include a README.md, so I'm wondering if it should be exactly the same as the example file structure.)

Thank you.

Question about activity before project proposal

Is there any opportunity to get some feedbacks about topic from TA's or professor before submitting project propasal at 9/24?

We are having a hard time deciding our topic. And we are not sure whether our topic we discussed is appropriate or not.

Thanks.

question about functional components/ class components

Hello, I have question about using class components.

Our lab session usually used class components, and I wonder if it is okay to use functional components. Should we use most of the components as class components or would it be totally up to us?

Thank you.

Homework1 Result

HW1 results are uploaded in ETL. You can check them in the grade tab of the course page.

You can check the score distribution and summaries below. (can change depending on the claiming results and may not be updated in this page)

스크린샷 2021-09-15 오후 6 43 31

Average Median STDEV
11.64285714 15 5.634079973

If you have any questions regarding the grade, send me([email protected]) an email.
Or, you can tell me after the practice session tomorrow.
Please keep in mind that I'll take claims regarding hw1 until September 24.

Pre-requisites for the practice session today

Hi, everyone.

Before participating in today's practice session (Sep 2), please prepare the following things in advance.

1) Ubuntu 18.04 for Windows users
All practices and homework are progressed on Linux environment.
There may not be a problem for Mac OS users.
For Windows users, we strongly recommend to install Ubuntu on a virtual machine.

2) Visual Studio Code
Although you can use any other IDE right for you, we recommend to use VSCode.
for download VSCode: https://code.visualstudio.com/download

questions about exception handling in fetch.py

While I handle urllib.error.URLError, "socket.gaierror: [Error -2] Name or service not know" comes before the error message of BabyFetchException.
In README.md, you say "We will not grade your decorator with its stack trace but just test the class of the raised exception and its message". then is it okay that there is another error message before the final error message of BabyFetchException?
Thank you

Question about Details in HW2

  1. To ensure, does the expression "trailing line-break character '\n'" in the comments for parseAndSave means the '\n' at the end of the CSV file after the last line?

  2. Is the gender notation only given as "M" and "F" in CSV file & input to provideChartData function?

  3. Regardless of the year data given by CSV file, should we always return objects from year 2001 to 2018? Or can we just assume that there are data only from year 2001-2018 in CSV file?

Thank you.

HW3 UI question

Hello, I was looking through hw3 and could not see explanation about css or UI, except
CSS framework like Bootstrap-React and SemanticUI-React. However, this is optional

Would it mean making any css file is not mandatory? Or should there be fair amount about UI?

Thank you.

Does the project's idea need to be completely new?

Hello, I have a question about the proposal we need to submit.
For we do not know all the projects that were done in the past in SWPP class, our team thought that the idea might be similar to an idea done in the past, unintentionally.
Does the project's idea need to be completely new or is it okay even though it is little bit similar to one of the ideas in the past?
Thank you.

file input question

Hello, I have a small question.

When executing python on console,
parser = BabynameParser("babydata", 2001) this worked but parser = BabynameParser(“{path}/babydata", 2001) this did not work(it cannot find my file, even though it is the right path). Should the two both work?

Thank you.

questions about hw2

Hello, I have 2 questions about hw2.
Can we assume that babyname.report.csv file always has header(year, rank...) as a first row?
And can alert message have trailing newline?
(example :
You must correct:

First Name
Last Name
Email
Date of Birth(\n) << should I remove it?
)
Thank you.

A KakaoTalk Open Chat for Team Building

Hello, my name is Jungmin Cho, a SWPP participant student.

Since the class is conducted online, there might be many students having difficulties in team building, including myself.
To solve this problem, I made an open chat room for team building.
Please join to introduce yourself, share your ideas and gather team members.

https://open.kakao.com/o/gxt4bIxd

Chat ID Policiy:
(Name) / (Major) / (Programming Level in 상, 중, 하)
eg) 홍길동 / 컴퓨터공학부 / 상

Question about React Router in lab3

What's the difference with Redirect and NavLink?
I thought they have similar attribute which is to go to another link .
Then why did we use Redirect on NewTodo.js, and NavLink on TodoList.js?

Cannot access URL page in homework1

Hello, I was trying to access website[https://www.ssa.gov/cgi-bin/popularnames.cgi] but it seems the server is not working. What should we do in this situation?

Thank you.

[hw2] sorting in ParseAndSave()

in ParseAndSave(), is it enough to just convert the text to csv in the order it is presented?
Or do we need to sort it according to year and rank?

Question about HW3

Can I use functional component with react-hook (useState, useRef, useHistory, useParams, etc...) instead class component?

Since react-hook is in the react library, I think it can be used, but I ask to be sure.

+) Can I use TypeScript for convenience?

Looking for 1 more member

Hello, my name is Ellen Kim and we are currently looking for just 1 more person to be in our team. The other members are Jennie Kim and 길광연. To give a little background on ourselves we have worked with Python, JavaScript, HTML, AWS, mySQL, and also have experience with deployment.
Please let us know by replying to this comment if anyone is interested. Thank you and looking forward to working with you!

Exception handling in HW1-1

Hi,
As I understood, for safe_internet_fetch and BabyFetchException, we are told to check urllib.error.URLError for invalid url or unstable internet connection. But since there are so many ways to make url invalid, urllib.error.HTTPError or http.client.InvalidURL are raised instead of urllib.error.URLError for some cases. Is it okay to check only urllib.error.URLError when we are raising BabyFetchException?
Thank you in advance.

New line at the end of the babyname.report.csv

Hello, I have a question about at the very last line of babyname.report.csv.
Currently my program prints a new line at the very last line because of the f.write("\n") in the predefined method save I assume.
Since it is given that our output should be identical with the babyname.report.csv in hw1 folder, I should remove the new line at the very last line, right?
I just wanted to make it sure.
Thank you :)

question about data objects' key in hw2

I have a question regarding hw2.
Can we assume that there are only two genders(male and female) in data objects?
I also wonder that whether we can assume the order of csv text (year, rank, name, gender, rankChange).

I will look forward to your reply, thank you.

Question About Team Project Topic

I find an topic that based on mobile application from uploaded poster example. (Team 7 poster : Pillbox)

Can we take a topic that based on mobile application using React-Native? (Or even android-native with java/kotlin?)

Thanks.

How to make use of Issue Board

Hi, everyone!

This is an announcement regarding how to make use of Github issue board.
You can post questions about lectures or homework, discuss with others, or look for teammates through issues.

When you post an issue, please follow rules below:

  • When you write some questions, please do not close the issue after the problem is resolved
    • Many students might have similar questions.
    • It will help preventing others from posting duplicated issues.
  • A person who discusses, or writes helpful comments a lot in issue board will get some extra point in his/her final grade, so we encourage you to participate enthusiastically.
  • Just for issues which are labeled as teammate (looking for teammates), please close those issues after you find proper teammates.
  • You can write in Korean if you want, but when you do so, please translate it into English as much as possible.
    • Since this course is an English course, please take international students into account using on Github or ETL.

Question about containers/components

Hello, hw3 seems to be separated in containers and components.
Are there any distinct criteria of separating those two, or is it up to us by studying?

Thank you.

Still unable to access the server to get babyname

I saw the reply from the other previous issue.
Even tried all the solutions TA mentioned, still unable to access URL for HW1.

Following is the solutions, TA suggested with previous URL accessing issue.

  1. The above issue can be resolved by resetting the Internet settings or proxy settings.

For solution 1, Could you please tell me details what I have to do to change settings?

  1. If that doesn't work, using a hotspot may be a temporary solution.

Tried solution 2, with my iPhone hot spot, but It's not working.

Originally posted by @kdh0102 in #6 (comment)

Also I tried to access URL with other browsers : Chrome, Safari, Edge. but all of them do not work well.

Question about project proposal guideline

In the project proposal, we should write about how we will test and demo the system. However, is there any detailed guideline or examples about what we have to write for this? At least I and my teammates don't know how to test the project yet. What should be included in this item?

questions about hw2 csv file.

Hello, I have a question about babyname CSV file. I already asked whether csv file always has header and the answer was yes.
Then is the header always given as (year,rank,name,gender,rankChange)?
I mean, does each row of csv datas always have form of an example (2008,219,Harrison,M,-6)?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.