Skip to content

Instantly share code, notes, and snippets.

@holmberd
Last active March 20, 2023 17:39
Show Gist options
  • Save holmberd/1cba768adc5f553cd19bbfc9ff1fe5a5 to your computer and use it in GitHub Desktop.
Save holmberd/1cba768adc5f553cd19bbfc9ff1fe5a5 to your computer and use it in GitHub Desktop.

Revisions

  1. holmberd revised this gist Mar 20, 2023. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion assignments.md
    Original file line number Diff line number Diff line change
    @@ -3,7 +3,7 @@ There are two exercises in this document that are expected to be completed.

    The source-code for each exercise should live in a separate repository, Github or GitLab, and should be accessible to the reviewer of the assignment. Each repository should contain a README file explaining the purpose of the repository and how to run it locally.

    For each exercise you are free to use whatever libraries and technologies you like, but a combination of Javascript/Typescript/React is preferred for the first exercise, and Nodejs?PHP for the second.
    For each exercise you are free to use whatever libraries and technologies you like, but a combination of Javascript/Typescript/React is preferred for the first exercise, and Nodejs/PHP for the second.

    Please do your best to write production-quality code.

  2. holmberd revised this gist Mar 16, 2023. 1 changed file with 10 additions and 6 deletions.
    16 changes: 10 additions & 6 deletions assignments.md
    Original file line number Diff line number Diff line change
    @@ -1,9 +1,11 @@
    # Excercies
    There are two excercies in this document that are expected to be completed.
    # Exercises
    There are two exercises in this document that are expected to be completed.

    The source-code for each assignment should live in a separate repository, Github or GitLab, and should be accessibly to the reviewer of the assignment. Each repository should contain a README file explaning the purpose of the repository and how to run it locally.
    The source-code for each exercise should live in a separate repository, Github or GitLab, and should be accessible to the reviewer of the assignment. Each repository should contain a README file explaining the purpose of the repository and how to run it locally.

    For each excercise you are free to use whatever libraries and technologies you like. Please do your best to write production-quality code.
    For each exercise you are free to use whatever libraries and technologies you like, but a combination of Javascript/Typescript/React is preferred for the first exercise, and Nodejs?PHP for the second.

    Please do your best to write production-quality code.

    Once completed, links to both of the repositories should be sent to: **[email protected]**

    @@ -38,7 +40,7 @@ Build a single JavaScript application that consumes data from a `log_data.json`
    ```

    ## Haiku API
    Build a command-line application that retrives Haiku messages from the specified endpoint and prints them in order.
    Build a command-line application that retrieves Haiku messages from the specified endpoint and prints them in order.

    **API Endpoint**: https://haiku.kremer.dev/?keyword=stanza

    @@ -50,4 +52,6 @@ Build a command-line application that retrives Haiku messages from the specified
    - message
    - response-code
    - response-time (in milliseconds)
    - On error prints an error message and exists with error code 1.
    - On error prints an error message and exits with error code 1.


  3. holmberd revised this gist Mar 16, 2023. 1 changed file with 3 additions and 3 deletions.
    6 changes: 3 additions & 3 deletions assignments.md
    Original file line number Diff line number Diff line change
    @@ -1,15 +1,15 @@
    # Take home Assignments
    # Excercies
    There are two excercies in this document that are expected to be completed.

    The source-code for each assignment should live in a separate repository, Github or GitLab, and should be accessibly to the reviewer of the assignment. Each repository should contain a README file explaning the purpose of the repository and how to run it locally.

    For each excercise you are free to use whatever libraries and technologies you like. Please do your best to write production-quality code.

    Once completed, links to both of the repositories should be sent to: **[email protected]**

    ## Log Viewer
    Build a single JavaScript application that consumes data from a `log_data.json` file and renders it as an HTML table on the page. Please add a usable header to the table and some additional content to the page to explain the purpose of the page and the data. A user should be able to interact with the table headers to sort rows by its column.

    You are free to use whatever libraries and technologies you like and please do your best to write production-quality code.

    `log_data.json`:
    ```
    {
  4. holmberd revised this gist Mar 16, 2023. 1 changed file with 10 additions and 26 deletions.
    36 changes: 10 additions & 26 deletions assignments.md
    Original file line number Diff line number Diff line change
    @@ -1,16 +1,16 @@
    # Take home Assignments
    There are two assignments in this document that are expected to be completed. All of the requirements for an assignment needs to be fullfilled for it the be considered completed.
    There are two excercies in this document that are expected to be completed.

    The source-code for each assignment should live in a separate repository, Github or GitLab, and should be accessibly to the reviewer of the assignment. Each repository should contain a README file explaning the purpose of the repository and how to run it locally.

    Once completed, links to both of the repositories should be sent to: insert@email.ere
    Once completed, links to both of the repositories should be sent to: **insert@email.here**

    ## Log Viewer
    Build a single JavaScript application that consumes data from a log_data.json file and renders it as an HTML table on the page. Please add a usable header to the table, and some additional content to the page to explain the purpose of the page and the data. A user should be able to interact with the table headers to change the sort order of the rows a column.
    Build a single JavaScript application that consumes data from a `log_data.json` file and renders it as an HTML table on the page. Please add a usable header to the table and some additional content to the page to explain the purpose of the page and the data. A user should be able to interact with the table headers to sort rows by its column.

    You are free to use whatever libraries you like as long as they align with the requirements. Please do your best to write production-quality code.
    You are free to use whatever libraries and technologies you like and please do your best to write production-quality code.

    Log from: https://en.wikipedia.org/wiki/The_Oregon_Trail_(1971_video_game)
    `log_data.json`:
    ```
    {
    "success": true,
    @@ -37,33 +37,17 @@ Log from: https://en.wikipedia.org/wiki/The_Oregon_Trail_(1971_video_game)
    }
    ```

    ### Requirements

    #### Application
    - The application should be written in React + Typescript.
    - The application should consume the json data in the log_data.json file.
    - The application should display a table where each row represents an entry in the log_data.json file.
    - The application should contain content that explains the purpose of the page, data and table functionality.
    - The application should display an error if the table fails to load, e.g. missing or corrupt log_data.json file.


    #### User
    - A user should be able to interact with the whole table on a small screen.
    - A user should be able to interact with the whole table on a large screen.
    - A user should be able to order table columns by interaction with the table headers.
    - A user should be able to order table columns by descending order where it makes sense.
    - A user should be able to order table columns by ascending order where it makes sense.

    ## Haiku API
    Build a command-line application that retrives Haiku messages from the specified endpoint and prints them in order.

    **API Endpoint**: https://haiku.kremer.dev/?keyword=stanza

    ### Requirements
    - Should accept a list of keywords as an argument.
    - Should fetch the Haiku messages from the specified endpoint and print them in order.
    ### Input
    - A list of keywords as arguments.

    ### Output
    - On success prints messages as an JSON array with the following data structure:
    - message
    - response-code
    - response-time (in milliseconds)
    - On error prints the error message and exists with error code 1.
    - On error prints an error message and exists with error code 1.
  5. holmberd revised this gist Mar 16, 2023. 1 changed file with 0 additions and 6 deletions.
    6 changes: 0 additions & 6 deletions assignments.md
    Original file line number Diff line number Diff line change
    @@ -10,12 +10,6 @@ Build a single JavaScript application that consumes data from a log_data.json fi

    You are free to use whatever libraries you like as long as they align with the requirements. Please do your best to write production-quality code.

    Using the provided index.html as a skeleton, create a single page JavaScript application that will consume the data in the global LOG_DATA object, and populate the table with the log data.
    Please add a usable header to the table, and some additional content to the page to explain the purpose of the page and the data.
    You are free to use whatever libraries and technologies you like.
    Bonus points for usability, styling and table sorting features.
    Please do your best to write production-quality code.

    Log from: https://en.wikipedia.org/wiki/The_Oregon_Trail_(1971_video_game)
    ```
    {
  6. holmberd revised this gist Mar 15, 2023. 1 changed file with 9 additions and 1 deletion.
    10 changes: 9 additions & 1 deletion assignments.md
    Original file line number Diff line number Diff line change
    @@ -6,7 +6,15 @@ The source-code for each assignment should live in a separate repository, Github
    Once completed, links to both of the repositories should be sent to: [email protected]

    ## Log Viewer
    Build and application that consumes data from a log_data.json file and renders it as an HTML table on the page. A user may interact with the data by interacting with the headers to change the column order.
    Build a single JavaScript application that consumes data from a log_data.json file and renders it as an HTML table on the page. Please add a usable header to the table, and some additional content to the page to explain the purpose of the page and the data. A user should be able to interact with the table headers to change the sort order of the rows a column.

    You are free to use whatever libraries you like as long as they align with the requirements. Please do your best to write production-quality code.

    Using the provided index.html as a skeleton, create a single page JavaScript application that will consume the data in the global LOG_DATA object, and populate the table with the log data.
    Please add a usable header to the table, and some additional content to the page to explain the purpose of the page and the data.
    You are free to use whatever libraries and technologies you like.
    Bonus points for usability, styling and table sorting features.
    Please do your best to write production-quality code.

    Log from: https://en.wikipedia.org/wiki/The_Oregon_Trail_(1971_video_game)
    ```
  7. holmberd revised this gist Mar 10, 2023. 1 changed file with 3 additions and 2 deletions.
    5 changes: 3 additions & 2 deletions assignments.md
    Original file line number Diff line number Diff line change
    @@ -1,7 +1,8 @@
    # Take home Assignments
    There are two assignments in this document that are expected to be completed. All of the requirements for an assignment needs to be fullfilled.
    There are two assignments in this document that are expected to be completed. All of the requirements for an assignment needs to be fullfilled for it the be considered completed.

    The source-code for each assignment should live in a separate repository, Github or GitLab, and should be accessibly to the reviewer of the assignment. Each repository should contain a README file explaning the purpose of the repository and how to run it locally.

    Each assignment source-code should live in a separate repository, Github or GitLab, and should be accessibly to the reviewer of the assignment.
    Once completed, links to both of the repositories should be sent to: [email protected]

    ## Log Viewer
  8. holmberd revised this gist Mar 10, 2023. 1 changed file with 2 additions and 2 deletions.
    4 changes: 2 additions & 2 deletions assignments.md
    Original file line number Diff line number Diff line change
    @@ -1,8 +1,8 @@
    # Take home Assignments
    There are two assignments in this document that are expected to be completed. All of the requirments for an assignment needs to be fullfilled.
    There are two assignments in this document that are expected to be completed. All of the requirements for an assignment needs to be fullfilled.

    Each assignment source-code should live in a separate repository, Github or GitLab, and should be accessibly to the reviewer of the assignment.
    Once completed can send links to both of the repositories to: [email protected]
    Once completed, links to both of the repositories should be sent to: [email protected]

    ## Log Viewer
    Build and application that consumes data from a log_data.json file and renders it as an HTML table on the page. A user may interact with the data by interacting with the headers to change the column order.
  9. holmberd revised this gist Mar 10, 2023. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion assignments.md
    Original file line number Diff line number Diff line change
    @@ -54,7 +54,7 @@ Log from: https://en.wikipedia.org/wiki/The_Oregon_Trail_(1971_video_game)
    ## Haiku API
    Build a command-line application that retrives Haiku messages from the specified endpoint and prints them in order.

    **API Endpoint**: https://haiku.kremer.dev/?keyword=stanza1
    **API Endpoint**: https://haiku.kremer.dev/?keyword=stanza

    ### Requirements
    - Should accept a list of keywords as an argument.
  10. holmberd renamed this gist Mar 10, 2023. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion gistfile1.txt → assignments.md
    Original file line number Diff line number Diff line change
    @@ -54,7 +54,7 @@ Log from: https://en.wikipedia.org/wiki/The_Oregon_Trail_(1971_video_game)
    ## Haiku API
    Build a command-line application that retrives Haiku messages from the specified endpoint and prints them in order.

    API Endpoint: https://haiku.kremer.dev/?keyword=stanza1
    **API Endpoint**: https://haiku.kremer.dev/?keyword=stanza1

    ### Requirements
    - Should accept a list of keywords as an argument.
  11. holmberd created this gist Mar 10, 2023.
    66 changes: 66 additions & 0 deletions gistfile1.txt
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,66 @@
    # Take home Assignments
    There are two assignments in this document that are expected to be completed. All of the requirments for an assignment needs to be fullfilled.

    Each assignment source-code should live in a separate repository, Github or GitLab, and should be accessibly to the reviewer of the assignment.
    Once completed can send links to both of the repositories to: [email protected]

    ## Log Viewer
    Build and application that consumes data from a log_data.json file and renders it as an HTML table on the page. A user may interact with the data by interacting with the headers to change the column order.

    Log from: https://en.wikipedia.org/wiki/The_Oregon_Trail_(1971_video_game)
    ```
    {
    "success": true,
    "logs": [
    { "datetime": "2013-10-15T19:15:05", "type": "ERROR", "name": "Death", "message": "Nicole has died of dysentry", "source": "com.devcpu.oregontrail.uhoh" },
    { "datetime": "2013-10-15T19:14:05", "type": "WARN", "name": "Injury", "message": "Mary has a broken arm", "source": "com.devcpu.oregontrail.whoops" },
    { "datetime": "2013-10-15T19:12:05", "type": "INFO", "name": "Birth", "message": "Janet gave birth to twins", "source": "com.devcpu.oregontrail.uhoh" },
    { "datetime": "2013-10-15T19:11:05", "type": "WARN", "name": "Broke down", "message": "Your wagon has broken a wheel", "source": "com.devcpu.oregontrail.wheeeeeel" },
    { "datetime": "2013-10-15T12:10:05", "type": "ERROR", "name": "Death", "message": "6 of your oxen have perished overnight!", "source": "com.devcpu.oregantrail.oxentoxin" },
    { "datetime": "2013-10-15T10:09:05", "type": "INFO", "name": "Crossing", "message": "You are faced with crossing a large river.", "source": "com.devcpu.oregantrail.gumboots.betterHavePacked" },
    { "datetime": "2013-10-15T09:05:05", "type": "INFO", "name": "Traveller", "message": "Judas has joined your group", "source": "com.devcpu.oregantrail.start" },
    { "datetime": "2013-10-15T09:05:05", "type": "INFO", "name": "Traveller", "message": "Jesus has joined your group", "source": "com.devcpu.oregantrail.start" },
    { "datetime": "2013-10-15T09:05:05", "type": "INFO", "name": "Traveller", "message": "Sarah has joined your group", "source": "com.devcpu.oregantrail.start" },
    { "datetime": "2013-10-15T09:05:05", "type": "INFO", "name": "Traveller", "message": "Nicole has joined your group", "source": "com.devcpu.oregantrail.start" },
    { "datetime": "2013-10-15T09:05:05", "type": "INFO", "name": "PackedItem", "message": "You have decided to pack 5 chickens", "source": "com.devcpu.oregantrail.packinTime" },
    { "datetime": "2013-10-15T09:05:05", "type": "INFO", "name": "PackedItem", "message": "You have decided to pack a knife", "source": "com.devcpu.oregantrail.packinTime" },
    { "datetime": "2013-10-15T09:05:05", "type": "INFO", "name": "PackedItem", "message": "You have decided to pack an axe", "source": "com.devcpu.oregantrail.packinTime" },
    { "datetime": "2013-10-15T09:05:05", "type": "INFO", "name": "PackedItem", "message": "You have decided to pack 20 cast iron pans", "source": "com.devcpu.oregantrail.packinTime" },
    { "datetime": "2013-10-15T09:05:05", "type": "INFO", "name": "PackedItem", "message": "You have decided to pack bullets", "source": "com.devcpu.oregantrail.poorBuffalo" },
    { "datetime": "2013-10-15T09:05:05", "type": "INFO", "name": "PackedItem", "message": "You have decided to pack a rifle", "source": "com.devcpu.oregantrail.poorBuffalo" },
    { "datetime": "2013-10-15T09:05:05", "type": "INFO", "name": "PackedItem", "message": "You have decided to pack 10 oxen", "source": "com.devcpu.oregantrail.packinTime" },
    { "datetime": "2013-10-15T09:05:05", "type": "INFO", "name": "Start", "message": "You have started your journey", "source": "com.devcpu.oregantrail.start" }
    ]
    }
    ```

    ### Requirements

    #### Application
    - The application should be written in React + Typescript.
    - The application should consume the json data in the log_data.json file.
    - The application should display a table where each row represents an entry in the log_data.json file.
    - The application should contain content that explains the purpose of the page, data and table functionality.
    - The application should display an error if the table fails to load, e.g. missing or corrupt log_data.json file.


    #### User
    - A user should be able to interact with the whole table on a small screen.
    - A user should be able to interact with the whole table on a large screen.
    - A user should be able to order table columns by interaction with the table headers.
    - A user should be able to order table columns by descending order where it makes sense.
    - A user should be able to order table columns by ascending order where it makes sense.

    ## Haiku API
    Build a command-line application that retrives Haiku messages from the specified endpoint and prints them in order.

    API Endpoint: https://haiku.kremer.dev/?keyword=stanza1

    ### Requirements
    - Should accept a list of keywords as an argument.
    - Should fetch the Haiku messages from the specified endpoint and print them in order.
    - On success prints messages as an JSON array with the following data structure:
    - message
    - response-code
    - response-time (in milliseconds)
    - On error prints the error message and exists with error code 1.