I've done 2 so far (one shade in esun Glass Light Blue PLA, one shade in esun Glass Watermelon Red PLA [shades printed on a TRONXY X5S], esun White ABS for everything else [printed on an Ultimaker 2]) with a third shade in esun Glass Lemon Yellow PLA running now. They look very nice so far with just a little cleanup required. I used the Leviton Model # R50-06098-0PG Push Button Lamp Socket from Home Depot, an ECOSMART 40W LED bulb and a white 2 wire power cord (cut from an HDX 6' indoor extension cord). The socket seems like the right one, it fits in with just a little push but the recess in the printed buttons do not match the socket shaft. I simply redrew the part with holes that are a slight press fit. So right now the bulb and socket are just kind of sitting in the base loosely.
Is the base insert intended to be glued in? If the lamp socket ever fails, there's no way to get it out to replace it. I think it needs some screw holes so it can be screwed into the base for easy removal using Plastite screws. I think maybe a base insert that uses a threaded lamp pipe to fit the thread in the base of the socket and a recess in the bottom for the pipe and cord to come out with a smaller channel for the 2 wire cord would make the cord less noticeable. The strain relief I see in the picture seems a bit of overkill. Add a smaller groove to fit the 2 wire cord and fill up the large hole in the lamp base that was for the big cord strain relief.
How is the bulb holder supposed to work? When printed at 100% the smaller OD portion slides nicely into the base but the socket is level with the top of the base so it won't fit that way. Also, it didn't fit around an ECOSMART 40W LED bulb from Home Depot. I scaled it up to 125% so it did fit around the bulb but now I had to flip it over so the smaller OD was pointing up but the bulb would not make full contact with the socket and was jamming the buttons against the top of the holes so it seems like it should be shorter.
Other than that, I do like this!