Friday, March 9, 2018

raid 1 set up

I bought HD enclosure: NST-27253-BK. it is from v1.01. Dual 2.5inch SATA SSD/HDD RAID enclsoure. serial number:0664400409.

specification from box: NexStarGX usb3.0 SATA SSD/HDD RAID enclsoure

  1. model: NST-27253-BK
  2. device support:SATA I/II/III SSD/HDD/SDHD
  3. device size:2 bay for 2.5" 7mm and 9.5mm SSD/HDD/SDHDs
  4. internal interface: SATA
  5. external interface: usb3.0 micro-B
  6. HDD capacity: 2 TB per bay, for a combined total of 4TB.
  7. power supply: USB AC adapter 5V/2A; micro USB to A, length :23 inches
  8. weight: 300g
  9. dimension:130x83x25mm
  10. system requirements: windows 7/8/10, MACX 10.6 or above. Linux ubuten 10.4(kernel 2.6.38)


  1. support Dual 2.5" SATA/I/II/III/SSD/HDD/SDHD
  2. support JBOD/RAID 0 /RAID 1
  3. Auto RAID 1 rebuild
  4. support UASP
  5. SATA interface support SATA III specification up to 6Gps

instruction to set up:

  1. power up unit
  2. wait for the drive to spin up speed
  3. press and hold the reset button for 3 seconds(HDD LEDS will turn off)
  4. release the reset button and the built-in controller will activate the RAID or normal mode based on the dip switch setting.
  • all new USB storage device need to be intialized, partition and formatted for the operating system you are using before it can store data.
  • for windows operating system, use Disk Management
  • for OS X, use disk utility to prepare this storage device
  • note: on Windows 10, plug in usb to computer, power up. the HDD LED lights are on. it shows current setting(JBOFS). now press reset button for 3 seconds. new drives get disconnected and then connected to computers based on sounds. and then new RAID 1 setting is enabled based on light below RAID 1 setting.
  • start Disk Management tool. PC automatically recognizes the uninitialized hard drive. it prompts you to format it. follow the prompts and format the hard drive. no quick format and no enable compression.
  • for details instruction refer to the FAQ " how to preparing a new storage, hard driver, or SSD for use with a system?" on our website support section at

Hard Drive specifications:HGST TRAVELSTAR hard drive. o=bought on 03/08/2018.

  1. 1TB. 5400 RPM. 8MB/Mo Cache. 9.5mm.
  2. S/N: 1V2EYNEM (0S03508)
  3. 12-2017. made in China
  4. Bar-code: 05487 18982

Saturday, March 3, 2018

research on class design

research on class design. if we have a legacy software, how to improve it? this article gives some thoughts, then follow these threads, we can move on broader view.

  1. Discovering Hidden Design
  2. Choosing Structure over Naming

    There are many qualities that can make designs better. One that really helps names that have clear meaning in the domain. We can use those names to help us determine the relationship between different parts of our code. Beyond that, we can fall back on the classical ideas of coupling and cohesion — a design is good when it maximizes cohesion and minimizes coupling. Although the justification is rarely noted, it's likely that the concepts of coupling and cohesion are useful to us because they are cognitive aids for understanding unfamiliar things [1]. We can understand only so much at a time, so the pieces we attempt to understand should be small and their dependencies should be clear and few. We should be able to understand a chunk of code by itself. Good naming helps us by giving us a mental handle for the other chunks of code that a particular chunk depends upon. It helps us build up a web of understanding.

    There are times, however, when our code has internal clustering in its graph and we can't conceive of good names for the clusters. If that is the case, is it acceptable to choose a poor name and move forward with class extraction? Aren't we making our code a little worse if we do that? Again, everyone has to make their own judgment on a situation-by-situation basis, but it's worth considering that naming is only one aspect of program understanding. Code, in general, becomes more understandable when we are looking at chunks that don't have many dependencies on externals. When we can look at a piece and feel that we can understand it locally, we are more likely to be able to change it correctly. The fact that we don't have a good name for it is regrettable, but there is always the chance that we might find a good name later, or that we might eventually merge the the extracted class back into its original class and find a better to way to refactor. In the meantime, we get the benefit of local understanding. If that understanding is constructive relative to the original state of the code, the refactoring might be worthwhile.

  3. Coupling and Cohesion
  4. Structured Design
  5. Writing code for other people: cognitive psychology and the fundamentals of good software design principles
  6. code of damned: good website
  7. How to avoid temporal coupling in C#
  8. Design for change: Coupling and cohesion in object oriented systems
  9. All You Need to Know About UASP
  10. Identifying Object-Oriented Classes
  11. High Cohesion & Low Coupling using SOLID Principles -- Part 1
  12. High Cohesion & Low Coupling Using SOLID Principles -- Part 2
  13. Adaptive Code via C#:

Friday, March 2, 2018

research on scale

research on scale. plan is: plotting, zoom, pan on chart engine on Devx. Gigasoft on scale and zoom design.

  1. ProEssentials v8 Help
  2. look at alphabetical listing. focus on "S" section: scale. especially on "scale Symbols".

  3. .NET C++ MFC Delphi ActiveX Charting Download
  4. Chapter 2: C# .NET WinForm Walk-Through VS2010
  5. user's manual=>Chapter 2 WPF WinForm ASP.NET =>

    1. WinForm C# 2010 Walkthrough or WinForm C# 2012 Walkthrough
    2. .NET example code is good place to review too
    3. .NET deployment is good place to review too
    4. .NET installation

  6. Build a Reusable Graphical Charting Engine with C#
  7. extract class design. study the required minimal property and methods to be a charting component.

  8. Welcome To JFreeChart!
  9. Scientific charting control
  10. n MFC Chart Control with Enhanced User Interface
  11. High-speed Charting Control
  12. Scientific charting control
  13. A simple C# library for graph plotting
  14. Plot Graphic Library
  15. Drawing Recurrence Plots with C#
  16. FPlot, a .NET library for plotting functions and measurement data
  17. AderPlotter
  18. Oscilloscope/StripChart Control
  19. Line Graph Component in C#
  20. Graphing Calculator in C# with LES
  21. A Simple Graph Control
  22. Graph Library
  23. Autoscaling Graph Control
  24. A 2D Graph Component With Zoom Capability
  25. Realtime Chart and Graph in One
  26. C# 2.0 Graphing Control
  27. Building a Graph control in 7 easy steps.
  28. Drawing a Line Graph in GDI+
  29. GraphDisplay: a Bezier based control for graphing functions and curves
  30. Graph control
  31. Tracker - A Windows Form graph control
  32. need to search graph on

  33. Bullet Graphs - A Custom Control - WPF vs. Windows Forms