GithubHelp home page GithubHelp logo

cloud-hosted-guides's People

Contributors

austin0 avatar ericc-hao avatar eugene-f02 avatar github-actions[bot] avatar gkwan-ibm avatar gracejansen avatar guidesbot avatar jakub-pomykala avatar reecenana avatar tomjenningss avatar yasmin-aumeeruddy avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

cloud-hosted-guides's Issues

Maintain the courses landing pages

  • is it possible to generate landing pages?
  • define the content of the landing pages
  • how to back them up?
  • how to restore them?
  • how to update them?

Home page

Need to discuss and design the home page

Unclear Reference to "Terminal"

Which Terminal are you referring to the OS or the one in the right panel?
For more than one terminal can we number them to make it easier to refer to which one we are talking about?

Improve the sign in page

  • The height of the email and password text fields are too much. They can be thinner.
  • The sign in button font is too big too
  • the font size of all text should be same except the title
  • The title "Sign in" and the sign in button look duplicated

Screen Shot 2020-12-22 at 1 13 25 PM

Reset Password

I did not see a link for reset in the email. I am not clear how the technical support works.

Check Your Email

You entered If this email address is associated with your Open Liberty Hands On account, we will send a message with password recovery instructions to this email address.

If you do not receive a password reset message after 1 minute, verify that you entered the correct email address, or check your spam folder.

If you need further assistance, contact technical support.

The term should be consistent

The following terms are used in different pages.

  • Open Liberty SkillsNetwork (in login page, github signin page)
  • Open Liberty Skills Network (in login page)
  • skillsnetwork.site (google signin page)
  • Open Liberty Skills Network Portal (logout page, home page)
  • Open Liberty Hands On (SN account page)

Need to be consistent

microprofile-jwt feedback

Step 3

  • The formatting of the table is a bit off. Maybe put spaces between username roles password

Screen Shot 2021-03-12 at 4 23 34 PM

Step 7

  • Screen Shot 2021-03-15 at 1 47 34 PM, getting this issue

Step ..

Could complete the lab

Overall

  • When creating new files, I found it easier to command+click rather then following select File > Open > guide-microprofile-jwt/start/frontend/src/main/java/io/openliberty/guides/frontend/ApplicationBean.java

Screen Shot 2021-03-15 at 1 37 54 PM

  • Alternatively, when doing it locally on VSCode, you can do code -r guide-microprofile-jwt/start/frontend/src/main/java/io/openliberty/guides/frontend/ApplicationBean.java and it will open that file directly within the current instance of VSCode. To do this, we would need to add vscode to the path.

Externalize text

Can we externalize text to a separate properties files (or whatever equivalent or appropriate) so we don't have to hard code and they can be updated without needing to recompile code?

@jamiecoleman92 @gkwan-ibm

Fix course view layout

After doing some experimenting with the course view I noticed some of the layout needs correcting. This will probably need a redesign for some aspects such as the header and footer although the actual course may not be configurable. This may be a bigger piece of work but as a min we need to make sure the header and footer are readable and in some kind of order unlike the image below:
image

Feedback on Reactive Messaging Acknowledgement guide conversion to SNL

  • Architecture diagram missing on first page —> remove reference to diagram as we will not be including it

  • Additional pre-reqs page not needed now

  • Missing this sentence —> The finish directory contains the finished project that you will build.

  • Not sure why this is there —> start/SystemService.java in the Choosing an acknowledgment strategy section?

  • POSTPROCESSING —> style is incorrect, should be underscore and in box type

  • Not sure why this section is all in italics, not needed —> strategy by default. If the acknowledgment strategy is set to

  • This formatting has gone funny - should just be bullet points ins the text not in a code box —> - If the method emits data, the incoming message is acknowledged after the outgoing message is acknowledged. - If the method doesn't emit data, the incoming message is acknowledged after the method or processing completes.

  • All this text is formatted incorrectly, should be normal text —>
“ Its important that the methods use the POST_PROCESSING strategy because it fulfills the requirement that a message isn't acknowledged until after the message is fully processed. This processing strategy is beneficial in situations where messages must reliably not get lost. When the POST_PROCESSING acknowledgment strategy cant be “



————
Implementing the MANUAL acknowledgment strategy
———

  • This shouldn’t be here —> finish/SystemService.java

  • 
This should just be normal text as bullet points —> - If the system property isn't valid, the method acknowledges
    the incoming message and returns an empty reactive stream. The processing is
    complete. - If the system property is valid, the method creates a message with the value of the
    requested system property and sends it to the proper channel. The method acknowledges the incoming message only
    after the sent message is acknowledged.

———
Waiting for a message to be acknowledged
———

  • This shouldn’t be here —> InventoryResource.java

  • Missing semicolon at the end of the provided replacement for InventoryResource.java file

——
Building and running the application
———

  • Command not formatted correctly to be copyable. Should be two separate commands—> docker build -t system:1.0-SNAPSHOT system/. docker build -t inventory:1.0-SNAPSHOT inventory/.

  • Issues with formatting at the bottom of this page —> weird -- unnecessary lines here and command not formatted correctly to be copyable again - ./scripts/startContainers.sh

——
Testing the application
———

  • Missing this sentence —> Go to the http://localhost:9085/inventory/systems URL to access the inventory microservice. You see the CPU systemLoad property for all the systems: (Only have “Go to the” at the moment)

  • Need to remove comments or format them correctly for SNL —> otherwise curl commands will result in error 500

  • Curl command not formatted correctly for copying —> curl -X PUT -d "os.name" http://localhost:9085/inventory/data --header "Content-Type:text/plain"

——
Tearing down the environment
——

  • Command not configured correctly for copying —> ./scripts/stopContainers.sh

  • The command —> rmdir guide-microprofile-reactive-messaging-acknowledgment - Fails to remove the directory

Microprofile-opentracing-jaeger feedback

Step 6 has the fonts going into very small for this part.
Screen Shot 2021-03-12 at 1 27 58 PM

Overall, I think that the text hierarchy could be improved. In step 6, it a little bit hard to see quickly when we are switching to a new instruction.

Invalid markdown instructions

Accessing tutorial catalogue at https://ide.skillsnetwork.site/open-liberty-tutorial-catalogue I try to open a module and receive the following error in the Open Liberty Masterclass Modules

You tried to start a QuickLab with invalid markdown instructions. Please contact the QuickLab author to let them know their QuickLab is broken.

Encountered on Module 1 (Build) and Module 2 (Dev Mode) and Module 3 (Application API), have not checked other modules or categories yet.

Accessed in Firefox on Windows 10

New terminal output example for starting liberty in dev mode.

We have implemented a manual fix for the output example of terminal when user runs:

mvn liberty:dev

Previously the output example was

The defaultServer server is ready to run a smarter planet.

But now the output example is:

**********************************************************
*    Liberty is running in dev mode.

Improve the refresh infrastructure/mechanism

Every time commit a PR, all guides will be triggered to refresh. It slows down the SN.
Need to improve the refresh infrastructure/mechanism

  • when merge a PR, only refresh 1 guide in SN, now refresh all guides
  • PR not for guide, should not refresh SN

containerize guide

step 7

Screen Shot 2021-03-15 at 2 43 55 PM

  • The command should be curl http://localhost:**9091**/inventory/systems/{$SYSTEM_IP}

  • The text before this command tells you to get use the previously found IP, so I think we should either remove SYSTEM_IP=`docker inspect -f "{{.NetworkSettings.IPAddress }}" system` from the command or rewrite the instruction

step 8

  • Potentially visual bug? The font size decreases here

Screen Shot 2021-03-15 at 2 48 59 PM

  • Test failure for inventory

Screen Shot 2021-03-15 at 2 53 44 PM

Text Errors in modules

In Module 1 in the Reactive Java Workshop I found some errors in the text.


At the end of step 2 there is this text

The SystemService class contains a Publisher method that is called Flowable.interval() method from rxJava is used to set the frequency of how often the system service publishes the calculation to the event stream.

The sentence doesn't work and it looks like it is missing the middle portion of this paragraph from the Microprofile Reactive Messaging guide

The SystemService class contains a Publisher method that is called sendSystemLoad(), which calculates and returns the average system load. The @Outgoing annotation on the sendSystemLoad() method indicates that the method publishes its calculation as a message on a topic in the Kafka messaging system. The Flowable.interval() method from rxJava is used to set the frequency of how often the system service publishes the calculation to the event stream.


A similar error occurs at the end of step 3. The text in the module says:

The InventoryResource class contains a method called systemLoadTopic.

The guide text says:

The InventoryResource class contains a method called updateStatus(), which receives the message that contains the average system load and updates its existing inventory of systems and their average system load. The @Incoming("systemLoad") annotation on the updateStatus() method indicates that the method retrieves the average system load information by connecting to the channel called systemLoad. Later in the guide, you will configure the service so that any messages sent by the system service through the systemLoad channel are retrieved from a topic called systemLoadTopic, as shown in the following diagram:

Backup and restore

OL SN is using custom configuration. Need a backup and restore plan in case to rebuild it. e.g.

  • use lms-yyyymmdd.zip
  • backup the lms-yyyymmdd.zip in this repo

Create the landing pages for the 3rd set of guides

  • microprofile-istio-retry-fallback
  • microprofile-jwt
  • microprofile-metrics
  • microprofile-openapi
  • microprofile-reactive-messaging-acknowledgment
  • microprofile-reactive-messaging-rest-integration
  • microprofile-rest-client-async

Issue with GitHub/LinkedIn login on the Portal

When @austin0 and myself try to login using Github/LinkedIn it requests our email address. This is some kind of a bug that is not major but should be looked into further. This has been tested with a number of different users and it only has happened to us till this date.

Example outcome of signing in with LinkedIn bellow:
Screenshot 2021-01-25 at 14 10 07

Edit: This does not happen every single time on GitHub.

Can't copy and paste into editor on Linux

When trying to copy the new code from the left pane into the editor on the right, the error message pops up:
Screenshot 2021-01-12 at 2 17 03 PM

I am able to successfully copy and paste into the terminal, the issue is only with the editor. Also, if I copy using the browser's copy and paste, it works fine.

This was tested on a Linux VM using Firefox. This could be an issue unique to testing on a VM, but this is my only way to test it.

Feedback for Consuming RESTful services using the reactive JAX-RS client lab

What you'll learn

  • Not formatted correctly --> Youll first look at the supplied client application that uses the JAX-RS default CompletionStage-based provider. Then, youll mo --> should just be the completionstage that's formatted differently, all the rest should be normal text

  • Remove pre-req section, not needed for snl


Creating a web client using the default JAX-RS API

  • this needs to be removed --> InventoryClient.java

  • Needs to be used, not use --> JAX-RS provides a default reactive provider that you can use to create

  • Missing a cd start command before first touch command to Create the InventoryClient interface.

  • Codeblock for InventoryClient interface has gone very wrong!

Screenshot 2020-09-16 at 11 45 32

  • All the codeblocks and normal text after this seem to have been reversed and are all wrong for the remainder of this section.

  • None of the sections have been separated out into new tabs in SNL following this

Gilbert's review feedback

  • GuideConverter.java
    • Need license comment in the java file
    • Better not hard code the string but read the adoc files from the guides-common repository
      • generic code to read adoc file
    • writeToFile() is not efficient to open, write, and close the .md file. Either
      • write the content to a string buffer/stream, at end write the string buffer/stream to the .md file
      • or open the file stream at the beginning, and close at the end
    • in getMD(String guideName), look like the "temp.adoc" is just opened and closed. Any reason?
    • in codeSnippet(String path, String guideName), look like the "temp.adoc" is just opened and not closed. Any reason?
  • actions.yaml
    • README.md is removed before running the GuideConverter. In case, GuideConverter fail, will README.md be removed and PR still created?
  • Does the action directly update the master? If yes, need to make sure the automation won't screw up the master, especailly in failure, although it is possible to revert the PR. (i.e. if failure, no update)

Set up another SN portal for development

The production portal should only have production guides. No development work.

The staging portal should be used as development purpose for guides, converter, front-end, and even SN and quicklab update

Register and Login pages: ID review

Suggested edits for register and Login pages:

Register page

We will send you an account activation email. You can sign into the cloud-hosted guides next time, after you activate your account through that email.
--->
When you create an account, we send you an account activation email. You can sign in to the cloud-hosted guides after you activate your account through that email.

If the provider cannot provide your name and email to the IBM Developer Skill Network, you will be asked to create a regular IBM Developer Skills Network account.
--->
If the provider cannot provide your name and email to the IBM Developer Skill Network, you must create a regular IBM Developer Skills Network account.
OR
If the provider cannot provide your name and email to the IBM Developer Skill Network, we ask that you create a regular IBM Developer Skills Network account.

I am at least sixteen years of age.
--->
I am at least 16 years of age.

Login page

The OpenLiberty cloud-hosted guides
--->
The Open Liberty cloud-hosted guides

You can sign in with IBM Development Skills Network account or one of the following single sign-on providers.
--->
You can sign in with an IBM Development Skills Network account or through one of the following single sign-on providers.

I am at least sixteen years of age.
--->
I am at least 16 years of age.

JS code in OpenLiberty login page is running on a setTimeOut()

The only way the JS is always running is when it is running on a setTimeOut(). This has to be changed ASAP as it could cause problems for users in the future. The reason why it is using setTimeOut() is because document.addEventListener("DOMContentLoaded", function() nor window.addEventListener("load", function() did not work and caused the JS to load before the HTML/window finished loading

Rename repo when ready

Rename "quick-labs" to "cloud-hosted-guides" when ready to be consistent with formal name and other repo(s).

Feedback for Testing reactive java microservices lab

  • Incorrect path given - under the Configuring your containers section this path is incorrect: cd guide-reactive-service-testing/start/system --> It should be instructing the user to cd into the inventory directory not the system directory

Move custom CSS and JS over to this repository

For the previous time the custom CSS and the JS have been stored in Daniels personal repo. However we should move this over to this repo and also consider moving over the whole eDX theme and store it here.

Automation of creation of landing pages

At this moment Landing pages have to be created manually. However (if landing pages will still be used), it would be a good idea to automate this process using github actions and requests.

Package issue in cloud-hosted-guides

In some cases, after a user clones and opens the guide in the IDE they can see loads of red files with an warming/error of "Incorrect Package Name".

e.g.
This is the issue:
Screenshot 2021-02-23 at 15 50 53

This is what the issue causes:
Screenshot 2021-02-23 at 15 50 57

Because of this users may think that their code is broken.

Privacy policy warning

Talk to Skills Network about the warning message pointed out by Gilbert. See if possible to either remove or move to privacy policy.

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.