Jing Tech - Software Engineering Blog and Portfolio

website·Indexed 31 days ago

https://en.jing-tech.me

A personal website and blog by software engineer Jing Huang, featuring writing on frontend learning, professional experiences, and software engineering projects.

Tokens
1.5K
Snippets
2
Records
14
Agent score
0%

What's inside Jing Tech

  1. Recommended courses for Networking and Language Theory

    Specialized courses for networking and programming language theory:

    • Internet Overview: UMass CS453 (Reference: 'Computer Networking: A Top-Down Approach')
    • Network Security: Stanford CS253 (Highly recommended for front-end engineers to learn common hacking techniques)
    • Programming Languages: U of Utah CS3520 (Focuses on Functional Programming)
  2. Manage frontend development when designs or APIs are missing

    To prevent project delays when designs are not finalized or backend APIs are unavailable, use the following strategies:

    1. For missing designs: Create page files and define the User Flow. Verify these with the Product Manager (PM) to allow for rapid adjustments. If using Behavior-Driven Development (BDD) tests, review features with the PM and implement rough page layouts.
    2. For missing APIs: Obtain API documentation from backend engineers and use Mock Service Worker (MSW) to implement API mocking. This allows the frontend to achieve CRUD functionality, refine server responses, and simulate error scenarios before the actual API is ready.
  3. Find OpenCourseWare (OCW) using a professor-centric approach

    Instead of relying solely on platforms like Coursera or edX, you can find high-quality university course materials by searching for professors' personal web pages from reputable Computer Science schools. This allows access to direct class recordings, labs, and homework.
    1. Search for webpages of professors from famous CS schools.
    2. Check for public course materials (Video/Lab/HW).
    3. Verify the professor's rating on Rate My Professors (ratemyprofessors.com).
    4. Sample a lecture to determine if the teaching style fits your needs.
  4. Recommended blogs for React and Redux insights

    Expert blogs for deep dives into the React ecosystem:

    • Overreacted (Dan Abramov): Impressive articles on React.
    • Kent C. Dodds: Easy-to-understand explanations of React concepts.
    • iSquared Software (Mark Erikson): Detailed information on the evolution, pros, and cons of Redux.
  5. Recommended YouTube channels for front-end and algorithms

    High-quality YouTube channels for various technical needs:

    • Dan Abramov: Coding exercises and React-related topics, useful for understanding the thought processes of a React core maintainer.
    • Traversy Media: High-quality free courses for beginners.
    • Philip Fabianek: Simple and easy-to-understand explanations of React operations.
    • NeetCode: Gradual and clear explanations for Leetcode problems.
  6. Resources for Design Patterns and Functional Programming

    Specialized resources for architectural and programming paradigms:

    • Patterns.dev: Covers basic Design Patterns, Rendering Patterns (CSR, SSG, SSR, and the evolution from jQuery/Backbone to NextJS), and performance optimization.
    • Functional-Light JS: Covers basic Functional Programming (FP) techniques applicable to daily work.
    • Mostly Adequate Guide: A deeper dive into FP, including concepts like Monads.
  7. Recommended Udemy courses for front-end development

    The following Udemy courses are recommended for beginners and those seeking advanced knowledge to become competitive in the job market:

    • The Web Developer Bootcamp: A general education course covering JavaScript, CSS, NodeJS, and deployment.
    • React & Redux: A starting point for learning React and Redux with a focus on basics and small projects.
    • Advanced CSS: A deep-to-shallow approach to CSS including three projects.
    • Advanced JavaScript Concept: For developers seeking a deeper understanding of JS concepts.
    • MERN: An advanced course using MongoDB, Express, React, and NodeJS to implement a Web App.
  8. Implement form validation with React, Redux, Formik, and Yup

    For handling complex, multi-page forms and form validation in a React environment, the recommended stack is React combined with Redux for state management, Formik for form handling, and Yup for schema-based validation.
  9. Comparison of front-end learning platforms

    Comparison of paid subscription platforms for developers:

    PlatformCostQuality/FocusBest For
    Frontend Master$39/moHigh quality, courses by open-source core contributors.Intermediate to advanced developers wanting to enhance specific skills quickly.
    Egghead$12.5/moVariable quality, short-form content.After-work study due to short video lengths.
    Packtpub$12.99/moHigh quality, broad range from front-end to databases.General technical reading and updated book materials.
  10. Recommended Advanced CS courses for Systems and Databases

    Advanced courses for deepening knowledge in systems and data management:

    • Databases: UC Berkeley CS186 or CMU CS15445
    • Computer Systems:
      • CMU CS15213 (uses the CSAPP textbook and labs)
      • U of Wisconsin CS354
      • U of Wisconsin CS537 (based on the 'Operating Systems: Three Easy Pieces' textbook)
  11. Recommended CS Foundation courses for programming and algorithms

    Curated high-quality courses for building a strong CS foundation:

    • Discrete Math & Probability:
      • Discrete Math: Clemson Math4190
      • Probability: Stanford CS109 (paired with UC Berkeley Prob 140 Textbook)
    • Programming Basics:
      • UC Berkeley CS61A (Basic concepts) and CS61B (Data Structures & Software Engineering)
      • Alternatives: Harvard CS50, Stanford CS106A, or Stanford CS106B
    • Algorithms:
      • Theoretical Algorithms: UC Berkeley CS170, Stanford (Tim Roughgarden), or Harvard (Jelani Nelson)