Skip to main content

Tips


This page contains tips, things I like or find of interest, opinions etc.

UI Design and Accesibility

These days we have big screens everywhere and yet we insist in using small fonts and buttons.

On Ticket machines, ATMs, etc: There is a space between the tactile screen and the display. If you look from an angle, there is parallax error. If you insist in making the buttons 10 x 10 mm (in spite of having lots of screen real state), people are going to miss and hit the wrong one.

Interfaces have to be clear, functional, easy to use, not "pretty" according to some arbitrary standards. On one hand, designers add high contrast modes for the color blind, audio guidance etc. But keep making text and buttons small, and menus complicated. If you need a person to tell you how to buy a ticket, the interface is wrong.

How much screen real state do you want to waste?


On coding practices

HDLs

- Please follow some naming convention with active low signals, e.g., ending in "_n", and stick to it.
- When your "design intent" is that something happens when this OR that signal is active, use an OR operator. That is, even if !(a_n & b_n) is equivalent to (!a_n | !b_n) they do not convey the same meaning to the reader.

On technical illustration

- If you draw a sinewave with a couple Bezier curves or similar such that the slope at zero is infinite, you are fired. I have seen this in too many textbooks.

Random tips

These are some reminders, mainly for my own use.

Some I-wish-I-knew-before things:

On some PDF readers, Alt+left arrow takes you back to the last view (e.g., to go back after clicking on an hyperlink).

On MS Paint, the Shift key makes lines at 45º increments, ovals circular and rectangles square.

Ctrl+L clears a terminal. No need to write "clear".

MS Word

Equations in MS Word without leaving the keyboard:

Here are some examples of what can be done in MS Word. Equation editor can be opened with the Alt+= shortcut, and just type your equation in. No more fiddling with equation menus looking for your symbol.

A list of commands can be found in File>Options>Proofing>Auto-correct options>Math Auto-Correct
(In Spanish: Archivo>Opciones>Revisión>Autocorrección>Autocorrección Automática). You can even add your own, for example, I have set it up to replace "\exp" by "·10^" for writing faster in scientific notation. Math Auto-Correct can be enabled outside of the equation editor, so if you write "\alpha" in your regular text, it gets replaced by "α"

Equations can be placed in-line, which comes in handy for simple subscripts and superscripts.

There are matrices as well:

Miscelanea

Please learn how to use titles, indexes, figure captions and automatic figure references (So that numbers update automatically if you add or remove figures). It is really easy.

I personally do not like Word's built in citation manager. I do strongly recommend Zotero (stand-alone program with a Word plugin).

(Before you say "Use LaTex", I do use LaTex, but Word has its place)

MS Excel

You can assign meaningfull names to your cells, and use them in equations, instead of the alphanumeric codes. These names also appear as suggestions when you are writing your formulas. This is much clearer and less error prone.

Inkscape

I really like Inkscape for technical illustration. Just knowing how to use the draw tool and a snap grid can do wonders. Electrical schematics, timing diagrams, UML diagrams ... everything can be done with just one program.

Want to change the color of a trace on a graph you have in PDF? Import it in Inkscape, two clicks, done.

Want to distribute components inside an enclosure, or furniture in a room? Draw a couple rectangles scaled to your dimensions and move them around until happy with the layout.

You can draw a transistor, a logic gate, an inductor..., select it, group the elements that make it up and you can now use it as a component.

And now you have nice vector figures to include in your report, and that you can edit at any time.

LaTeX

Google scholar is great to get BibTeX citations:


MISC

How to paste Inkscape SVGs into Microsoft Word preserving arrow formating:

1. Draw your figure on Inkscape
2. Export said figure to PDF
3. Import PDF back to Inkscape
4. Copy and paste from Inkscape to Word
5. Profit

This has something to do with svg standard and marker settings (arrows for example).
Note: It helps to export figures to PDF individually, because it may mix them together (as in joining text boxes for example) when you import them back.
Note 2: https://superuser.com/questions/1709965/pdf-export-from-word-changes-line-width-of-thin-lines-in-embedded-svg

From Microsoft PPT to Microsoft Word, so figures can be scaled without moving things around:


Copy from PPT, paste on Inkscape. Paste back to Word from Inkscape.
Stroke to path helps with getting rid of some fonts that may misbehave.

Kicad Libraries

On Kicad 7.0

Symbol editor > Create new libray > Project: Creates kicad_sym file
-Import/create symbols in symbol editor

Footprint editor > Create new library > Project: Creates .pretty folder
-Import/create footprints in footprint editor and save them to library


On teaching: Opinion page of a mildly disgruntled university student

Teaching materials

- Cite sources on slides. I do not want to spend my time figuring out whose's slides you ripped off or from which book you took that particular figure. Whatever you copied is likely incomplete or out of proper context, and I may want to take a look at the original thing. Then there's of course giving credit to the original source.

- If you do not like something on your slides, do not apologize for it, change it!

- Slides with white background and dark text / figures are more easily printed. Please do away with "gradient" backgrounds and the like.

- Organized slides make the material easier to follow. Number your lessons and headings, use different styles for headings and sub-headings etc. It is hard to piece this together when you do not yet understand the topic.

- Animations can be great on certain ocassions, just make sure something intelligible results when you export to PDF!

Technical language

- Especially for those for whom english is not their native tongue, please use the appropriate technical jargon for the subject you are teaching. A couple mistakes or mispronuntiations here and there do not matter as long as you get your point across, yet getting jargon right is a must on technical courses.

    Examples:
        - voltage fall drop
        - charge porters carriers
        - jump step response
        - industry tendencies trends

- A pronuntiation pet peeve: Aliasing is pronounced ay-li-ah-sing not a-lay-a-sing.

Evaluation

- Feedback, and timely feedback that is, is invaluable. Students tend to want more that a number three weeks after the final exam. I want to know how I did on that last report so I don't make the same mistakes again.

Course organization

- Most courses I waded through suffered from an increasing workload as the semester progressed. While it is true that some practical material cannot be tackled before some theory classes, some homework and deliverables can be handed out earlier.




Comments

Popular posts from this blog

Split-ring compound epicyclic/planetary gearboxes

A while ago, I came across this strange thing called ‘split-ring compound epicyclic/planetary gearboxes’. They seemed really nice, extremely high gear ratios in compact, stackable modules. But the already existing models were not enough. I wanted to be able to design my own, and due to the lack of information on the subject, I had to do a little research and some math. Here is most of what I would have liked to find on the first place: 1. What is a planetary gearbox? Planetary gearboxes, as their name says, resemble planets orbiting around a “sun”. They are composed of a sun gear, in the center, two or more planet gears around it -and often fitted to a carrier- and a ring/annulus gear on the outside. As an image is worth a thousand words: Source Their main feature is a high reduction ratio in a small, flat space, and also, it is easy to couple the output of one gearbox to the input of another one, getting a two or more stage gearbox with such a high reduction ratio. But where is the i

Arduino Based Electronic Load

I have had some problems with my "lab power supply" and I wanted to build another one, so I thought a DC load may be handy to have around. The design is based around Dave Jone's design shown in this video , but with a couple more features, including:     -Arduino controlled.     -Voltage, current, power and temperature monitoring.     -CC and external in hardware modes and CP, Cr software modes.     -Over temperature, over power and over current protection (software) It can handle around 4 amps and 24 volts, limited by the mosfet. It's divided in two main boards. * UI Board: houses the 7 segment displays (I know one is bigger that the others, just what I had aroud...) and the keyboard. The display is multiplexed using a shift register. In addition, the four buttons are read taking advantage of the transistors switching the comon anodes, requiring only one additional pin. Only the first digit had decimal point, so one led was added for the second dig

Linear lab power supply

This is a dual channel linear lab power supply I have spent recent months building, much thanks to the help received in  this EEVBlog thread . All design files are available in this  GitHub repository . I will attempt to go over the general progress of the project, but please refer to the said thread for more information. Design requirements: Dual isolated channels. Adjustable voltage and current  30 V , 500 mA per channel. Digital voltage and current displays. Build stages: First, the case was made out of a wooden board and 3d printed front and back panels. Heatsinks were taken from old computers. One side of a 2x 10Vac and a 15 Vac transformer power each channel, plus a 12 Vac smaller transformer for the displays, fan and microcontroller. Ac voltages are rectified and filtered on a separate board. Here are some photos of the early development, initial circuit was based on the one found  here . Then came perfboard prototypes, testing and throubleshooting: