Skip to content

Category: english

three-circle venn diagram coin

$fn=100;

HEIGHT = 5;

CENTER_DISTANCE = 10;
OUTER_RADIUS = 40;
INNER_RADIUS = 30;

module inner_circle(position) {
  rotate([0,0,(360/3)*position])
    translate([CENTER_DISTANCE,0,0])
      cylinder(d=INNER_RADIUS, h=HEIGHT, center=true);
}

module logo() {
  difference() {
    cylinder(d=OUTER_RADIUS, h=HEIGHT-0.01, center=true);
    
    union() {
      intersection() {
        inner_circle(0);
        inner_circle(1);  
      }

    intersection() {
      inner_circle(1);
      inner_circle(2);  
    }

    intersection() {
      inner_circle(0);
      inner_circle(2);  
      }
    }
  }
  
  // piece in the middle
  intersection() {
    inner_circle(0);
    inner_circle(1);
    inner_circle(2);    
  }
}

logo();

half-hexagon in OpenSCAD

height = 5;
radius = 20;

difference() {
  cylinder(height, radius, radius, $fn=6);
  translate([-radius, 0, -height/4]) {            
    cube([radius*2, radius, radius]);
  }
}

It works for these parameters but it needs more work to be really parametric. But hey, it’s my first OpenSCAD thing. I actually exported as .STL and printed it.

I’m back to 3D printing

In 2016 I got a Monoprice Select Mini 3D Printer (model number 15365) for $200 USD. That was incredibly affordable for a 3D printer back then. That printer only gave me disappointments. I was never was able to print anything completely with it. My main problem was adhesion. The only help I got was online forums (there was a really active Facebook group about it). Debugging and trying different solutions without any success was not fun. It ended up just accumulating dust and occupying space in a corner.

Years later I found that my local library had working and calibrated 3d printers that I could just use. Just upload a .stl file and they would just email me when the print was ready. Also, for free. I tried it and it worked really well.

Example of 3D printer available in Fairfax Libraries
My head, 3d printed at my local library. I had my head 3D scanned by MakerBot in 2014.

So I filled some paperwork and donated my Monoprice Select Mini 3D Printer to the library. They also had a lot of other cool technology programs going on. From now on if I need to print something I know I could just use the library. I promise myself I would not mess with 3D printers themselves anymore.

Now in 2025, someone in the neighborhood was looking to donate their Monoprice Maker 2 Ultimate 3D printer. Just when I thought I was out, they pulled me back in. I got it from his hands, bought a spool of PLA Filament and started playing with it.

Monoprice Maker 2 Ultimate 3D printer

Technical specifications:

  • Maximum build volume: 200 x 150 x150mm
  • Filament diameter: 1.75mm
  • Nozzle Diameter: 0.4mm
  • Maximum Nozzle Temperature: 250°C
  • Maximum Build Plate Temperature: 100°C
  • Printing Speed: 20 ~ 150 mm/sec
  • Positioning Accuracy: XY Axis: 0.011mm, Z-Axis: 0.0025mm
  • Supported Filament Types: ABS, PLA, PLA Pro, TPU, TPE, PET, Metal fill, Wood fill, etc.
  • Supported Software: Wiibuilder, Cura, Simplify3D, Slic3r, Kisslicer
  • Supported File Formats: .STL, .gcode, .OBJ
  • Print Interface: USB, microSD card
  • Input Power: 24 VDC, 10A
  • AC Adapter Input Power: 100 ~ 240 VAC, 50/60 Hz
  • Maximum Power Consumption: 200 watts
  • Dimensions: 15.0″ x 13.4″ x 16.5″ (380 x 340 x 420 mm)
  • Weight: 33.1 lbs. (15kg)

I started just printing whatever gcode it had on its sdcard. My first prints were just adhesion failures again. That’s when my previous experiences from before were handy. I re-applied painters tape on the print bed, then the prints started to get further and further before failing. Then I got my first complete 3d print.

My first 3d print

Then I started trying with Thingverse stl objects, cutting them in Ultimaker Cura and printing my own gcodes. Here is the catch: the Monoprice Maker 2 Ultimate is a rebranded Weedo F150s. After I configured Cura to use a Weedo F150s the gcodes produced started to print with success.

Gearbox Keychain XL

The printer was modified to have this box with the filament spool over it.

USB cable extension holder.

A Cat phone holder.

Flexi cat.

I have now printed this flexi cat that took almost 6 hours. Do you know what I never got it printing correctly? That 3DBenchy that I always tried to print on my first printer. On this one it always causes the printer to shift layers and fail. Surely with some fine tuning of the parameters I can get it right but the lesson learned here is that sometimes a simple vase is a much better goal. Also, sometimes a 3D printer have more success printing larger objects rather than small ones.

Trying to delete photos from iCloud

I want to delete about 16 thousand photos from iCloud that I have already backed up somewhere else. First I tried using iCloud and Photos interface on Safari.

Safari

It can only delete 1000 items. It only alerts you about this when you have already selected the ones you need. Once it errors, it does not even give you a button to reduce to selection to a 1000 or simply batch and repeat 1000 at a time. Bad API, bad UI, bad UX.

Even when you manually select under 1000 items, it sometimes just errors. Probably because it is not handling exceptions properly when moving around the app while a delete request is still pending.

Native app

Then it happened to me that I could use the Photos app on a macOS Sequoia. I wish the web app (which does not feel like a web app on Safari) had told me that.

The native app did not have the same limitation of 1000 photos.

It took some minutes of almost no feedback in this progress bar but apparently it got the job done.

Now I have to delete these from the Recently Deleted Album in order to liberate my iCloud space. I could not finish this in the native app, probably because during this I turned off the iCloud Photo sync in my macOS.

Back to Safari

Trying to empty the Recently Deleted Album.

Ok, same error. But then I realize. Safari was still showing the photos I delete as not deleted.

I guess the macOS got really out-of-sync.

Google Photos

Because these photos and videos are already backed up on Google Photos, the Google Photos app could recognize they are already backed up and offered me to delete 5000 photos from my device.

This however did not delete the items from iCloud which was my initial goal.

Buying a pre-build PC on Costco, a saga

During Black Friday, I bought a computer from Costco, item 1857562 (iBuyPower i9-14900F+RTX 4070 Super). After about a week, I got the wrong computer. An iBuyPower i7-4700F+RTX4060 instead (item 1815274). That’s a weaker and cheaper computer (about $500 difference).

I called Costco, they offered me the following options:

  1. Return the computer, receive the money back. This would leave me without the computer and with the money buy the computer I wanted is now out-of-stock and there are no Black Friday deals.
  2. Return it, and the when the 1857562 (iBuyPower i9-14900F+RTX 4070 Super) is back in stock, they would price adjust it to the price I bought. They claimed that it will be back in stock at some point, but besides the time I fear the risk of them not honoring the price adjustment.

I offered them a 3rd option, return the wrong one and, for my troubles, I buy the a 1088917 (MSI Aegis ZS2 Ryzen 9900X+RTX 4070S 12gb) with an extra discount. This is a very similar machine with slightly better specs. They accepted. I had to buy 1088917 and once they ship it I will have to call Costco for the price adjustment. I will also have to handle the hassle of the return.

Overall, a terrible experience and a risk I never thought I would have with Costco. Looking the reviews I saw I was not the first one with exactly the same problem on this Black Friday of 2024.

ItemDescriptionDiscounted priceMSRP
1857562iBUYPOWER SlateMesh 8 Gaming Desktop – 14th Gen Intel Core i9-14900F – NVIDIA GeForce RTX 4070 Super 12 GB- Windows 11 – 32GB RAM – 2TB SSD$1,300 (Black Friday)$1,700
1815274iBUYPOWER TraceMesh 7 Gaming Desktop – 14th Gen Intel Core i7-14700F – GeForce RTX 4060 8GB – Windows 11 – 32 GB RAM – 2TB SSD – Black$ 1000 (Black Friday)$1,200
1088917MSI Aegis ZS2 Liquid Cooled Gaming Desktop – AMD Ryzen 9 7900X – GeForce RTX 4070 Super, 12GB – Windows 11 2TB SSD$1,500 (Deal going on after Black Friday)
$1,300 (Agreement)
$1,700
Prices rounded up for simplicity

Hopefully I will get a good deal out of all this but I still have to handle the return and price adjustments.

Chain of Promises Example

const f1 = async() => {
    setTimeout( () => {
        console.log("f1");
    }, 100)
};

const f2 = async() => {
    setTimeout( () => {
        console.log("f2");
    }, 100)
};

const f3 = async() => {
    return new Promise((resolve, reject) => {
        reject("f3");
    });
};

const f4 = async() => {
    setTimeout( () => {
        console.log("f4");
    }, 100)
};

const workflow = async () => {
    await f1();
    await f2();
    await f3();
    await f4();
};

workflow().catch((error)=>{
    console.error(error);
})