Handmade Network»Forums»Jobs board
Neo Ar
165 posts / 1 project
riscy.tv host
Simple Computer Company
Edited by Neo Ar on Reason: Initial post
  1. Computers should be simplified (whole stack)
  2. There aren't good laptops on the market
  3. No company seems to be tackling these problems
  4. There are talented folks with the right vision in this community
  5. Let's start a company
  6. ???
  7. profit!!!


If people are interested let's find some angel investors interested in backing this and do it, I haven't done the back of the envelope calculations regarding how much capital to raise and how many engineers to hire, just throwing this idea out there to judge interest. Flagship product would be a good quality RISC-V laptop (possible partnership opportunity with SiFive there to use their superscalar OoO core). Overarching vision of company to simplify all aspects of computers, employing people to work on these problems in both the hardware and software space.

DISCUSS
10 posts
None
Simple Computer Company
yes
Oliver Cruickshank
1 posts
Simple Computer Company
That's a cool idea. I'd be particularly interested.
Ben Visness
109 posts / 9 projects
HMN lead.
Simple Computer Company
I want to hear more about point 1!
Miles
131 posts / 4 projects
Simple Computer Company
Powerful RISC-V cores coming out could make now a great time for something like this. However, I wonder about graphical workloads. Is there anything comparable to RISC-V upcoming in the GPU space in terms of openness/simplicity? If not, how feasible is it to get by with just software rendering in the short-term? Regarding funding, do you have any specific potential sources in mind yet?

I'd love to work on a project like this. I think if we're serious we should move forward with this as fast as possible and see how far we can get, since in my (admittedly very limited) experience, ambitious projects tend to fizzle out early if they move too cautiously at the start.
Neo Ar
165 posts / 1 project
riscy.tv host
Simple Computer Company
bvisness
I want to hear more about point 1!

I'd start by buying an existing product representitive of the market we are attempting to enter - in this case a laptop. Tear it down to individual components and analyse - the complexity of anything not open to a detailed analysis (e.g. closed source software, firmware blobs) would need to be estimated as best as possible with whatever proxies are available. Note that there is no need to reverse engineer anything - we just want a rough picture of what every component is in the system and some metric of complexity associated with it, not the details of how it functions (but knowing that is better than not). Goal should be something along the lines of: produce a product that is competitive with an order of magnitude less complexity. Work done by employees should directly contribute to that goal because the product is what is going to make money, have to be pragmatic about that. A side-goal is that the product being developed should address/improve workflow of the people at the company - as in, the finished product will improve the companies ability to make whatever the next product is. It's worth pointing out that there is no definitive measure of complexity, but we would shoot for using the best proxy metrics we can get for informing our work.

Every component in the system (both hardware and software) should undergo a cost-benefit analysis including answering some basic questions like:
  1. What problem is this component trying to solve?
    • Is this actually necessary?
      • Yes: Continue evaluating
      • No: Scrap it


  2. Does it solve that problem?
    • Yes: Is it the simplest solution that meets all known constraints?
      • Yes: Ship it
      • No: Queue for R&D

    • No: Scrap it and decide whether it is feasable to develop an alternative solution

  3. Does it introduce problems of its own?
    • Yes: Can identified problems be resolved without significant increase in complexity?
      • Yes: Queue for R&D
      • No: Scrap it unless it is absolutely critical

    • No: Ship it



Of everything queued for R&D, prioritise and divy out work based on available resources; estimate & plan.

As things come together, it all needs to undergo some kind of periodic integration testing like:

For all components of shipping quality:
  1. How does it interact with the system as a whole?
    • No issues: Ship it
    • Problems discovered with component interactions
      • Can identified problems be resolved without additional components?
        • Yes: Queue for R&D
        • No: All involved components must be reevaluated with this context in mind





---

Every aspect (including software) of the final product should be considered finished. This would not be like some typical modern software startup where the product is considered living and constantly being revised. It ships when it's done, no updates other than any necessary bug or security fixes. Long-term support provided. Profit goes into building the next, more ambitious product.

notnullnotvoid
However, I wonder about graphical workloads. Is there anything comparable to RISC-V upcoming in the GPU space in terms of openness/simplicity? If not, how feasible is it to get by with just software rendering in the short-term? Regarding funding, do you have any specific potential sources in mind yet?


I think there is a large class of applications that would get by fine with software rendering but I would be pretty hesitant to ship a product like a laptop without a GPU. I think a company like this needs to be somewhat pragmatic to make an actual profit, not everything necessarily open source or solving every aspect of complexity, you do what you can with the resources you've got and make the best product you can.

Regarding funding, as I say, right now I am just judging interest from the community here. First thing I would do would be very rough back of the envelop calculations regarding team size and amount of capital to raise to start out with. I'd write up a more detailed business plan and work on a pitch for investors and start trying to make connections with people who would be interested in backing something like this and arrange meetings. I would not plunge into this unless I had a reasonable level of assurance that there would be initial investors on board with the idea. Would need to talk with a lawyer, register a business and get an office space, etc. If anyone here is business-savy, that would be very helpful; and if anyone here is a potential investor or knows potential investors, please speak up/contact me.
Ben Visness
109 posts / 9 projects
HMN lead.
Simple Computer Company
There was a bunch of discussion on the Discord about this, but since the IRC bridge was broken, I've copied it over here for your "convenience":

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
bvisness:
| https://handmade.network/forums/jobs-board/t/7186-simple_computer_company#22150
| Handmade.Network
| Simple Computer Company | Jobs board | handmade.network Forums
| Computers should be simplified (whole stack)There aren't good laptops on the marketNo company see…

oliver:
thats pretty cool

dotbmp:
I think "simple computer" is a pretty marketable concept

bvisness:
yeah, I think Chromebooks are a good example of that

dotbmp:
to consumers it looks like chromebooks
to devs it looks like heaven
| https://www.sifive.com/blog/incredibly-scalable-high-performance-risc-v-core-ip
| https://www.sifive.com/share.png
| Incredibly Scalable High-Performance RISC-V Core IP - SiFive
| Introducing the new SiFive U8-Series Core IP
hold on how the fuck did they get 7nm manufacturing...?
or is this just IP

ratchetfreak:
or it's a smaller die

dotbmp:
anyway to sort of continue the conversation from mollyrocket the other day, chromebooks are a good example of not really needing backcompat for new platforms
granted chromebooks have the web and thus all of web shit
but browsers are a relatively small problem
just plop webkit into your platform
or
cringe
chromium

bvisness:
curious what OS this would be
Chromebook gets off easy because everybody knows how to use a web browser

dotbmp:
not an existing OS

bvisness:
good luck running software though

dotbmp:
indeed

bvisness:
people are gonna want it to be useful

dotbmp:
my take is that new OS right off the bat is not the correct approach
new platform, sure
as a portable layer on top of existing OSes
and then once you have a market, you build down to the hardware

ratchetfreak:
but picking an existing OS as the kernel API ties you to that OS

dotbmp:
not exactly
you can abstract over it
of course you have to be careful not to let existing OS design decisions influence your own to the greatest degree possible

ratchetfreak:
that's not how public facing apis work

bvisness:
I almost feel like you'd have better luck virtualizing the whole thing, but that is not exactly a very Handmade OS approach

dotbmp:
I mean yeah you could always do an OS on top of a VM
| https://urbit.org/
| Urbit - Your personal server
| Urbit is a simple, durable system for running a personal server that you own 100% and forever.
like this
but yeah I'm not super thrilled about that idea

bvisness:
that urbit thing is some serious galaxy brain action
I do actually think there is room for some real innovation in what personal computing looks like given the broad availability of the internet, but I don't ever really want to demote computers to dumb terminals
I want to benefit from strong connectivity when it's there, and still have a robust computing experience when it's not

dotbmp:
I think "home servers" would be a sweet spot
Given the tiny computing demands of most households

bvisness:
that is definitely a thing I'm interested in
like, here's a raspberry pi in a slick case that you can plug into your router

dotbmp:
It would be less expensive to buy a server box you plop in a closet, than two desktops, four laptops, five tablets, whatever
Instead, those things could be thin clients
You could upgrade it as needed
Like, why have a game console... just buy a "console upgrade kit" or whatever and install it to your server
And play from any connected display in your house

AsafGartner:
Home server with physical cartridges per app, so they can bring their own memory/storage/co-processors.
So they don't have to compete with other apps that you have installed.

dotbmp:
Bwahaha

bvisness:
I don't think the in-home streaming situation is actually good enough in general to support something like that
maybe it's just implementation, but I couldn't get my Steam Link to stream well over wifi in the same room as my computer and router
until I went to 5GHz that is

AsafGartner:
Imagine if Google Photos was a cartridge with an SSD and an AI core for automatic tagging.

bvisness:
maybe just interference in my building, but still

dotbmp:
Put some USB 4c cables through the walls :^)

AsafGartner:
No more accidentally letting other people download your videos.

dotbmp:
Imagine if no Google Photos

AsafGartner:
But how would you share baby photos?

dotbmp:
If you have an always-on home server you can just tunnel home on your phone

bvisness:
I think online photo features are really useful and I wish companies weren't scraping them all for data!

dotbmp:
Sharing is more of a concern that does involve centralized services
(in the absence of a revolutionary distributed system)
But it could be much more selective than "online by default"
After all people don't want to share most of their photos
Well
Most photos are taken to be shared, but as far as photos taken "offline" rather than as part of an app
And most are not final takes, either
If you take 30 photos at a family event you probably want to share 4-5

bvisness:
A good photo app is one of the apps I want to make someday

dotbmp:
And nudes are becoming a massive problem in terms of cloud services
Imagine opening your Google Photos and having someone's amateur sex tape on your phone hahaha
What a farce

bvisness:
all the photo services are very proprietary and closed-off and I rue the day when everybody loses all their family photos because Google shut something down

dotbmp:
The trust is the bigger problem imo
If people were actually nervous about these services failing them it would be less bad
But we take this stuff for granted

bvisness:
I want the benefits of my photos being available on all my devices, but I also want to be able to just find a jpg file and email it to somebody
things like the Apple photo library (on Mac) are so egregious about this
you have to find the export button or whatever

ctp:
i would bet theres a market for a gitlab-like 'host your own cloud service' type thing for personal email+photos+docs+sharing

AsafGartner:
| https://owncloud.org/
| ownCloud
| ✔ ownCloud - The leading OpenSource Cloud Collaboration Platform.
| Access & share your files, calendars, contacts, mail & more from any device; on your terms.

bvisness:
it has to be easy to set up though, and that's where I think it usually breaks down

dotbmp:
Well let's take the home server thing
Let's say it becomes popular
Or even marginally popular
Maybe there are 30K people with them in the US
They're always-on
You keep your photos on them on redundant storage with backups
You could have opt-in peer-to-peer backup "coalitions"
Just a bunch of people who agree to share some space on their storage for and some CPU time/bandwidth to do distributed redundancy through peer-to-peer streaming

bvisness:
some home backup programs have done that but they are inevitably frustrating (not because it's inherently frustrating, but because it's made poorly)

dotbmp:
Right, this would have to be a first-class feature
(When I say home server I mean with a new software platform etc)

ctp:
shouldnt depend on peer-to-peer backups imo. "can anyone seed [picutres of my kids - siterip] im at 99%

AsafGartner:
I wouldn't mind a regular backup service. You can encrypt your files locally on backblaze for example.

dotbmp:
@ctp this is a reductive view
I'm not talking about using bittorrent
you'd opt in to a group of thousands of people doing this

ctp:
personally I would never depend on a peer to peer system for backups. your backup can be encrypted and stored on normal remote services.

bvisness:
I don't think I share the same concerns but I also think that I generally wouldn't care about peer-to-peer

dotbmp:
I literally said
You keep your photos on them on redundant storage with backups

ctp:
has any peer to peer system reached the level of reliability required to use as a backup? not talking about cryptocurrencies

dotbmp:
these aren't mutually exclusive concepts

bvisness:
I don't think remote centralized stuff has to go away, especially for the backup case

dotbmp:
I disagree
kind of
it's fine most of the time

ctp:
backups are a reliability problem, not a privacy problem or a centraliztion problem.

dotbmp:
but when it's bad, it's really bad
(see: the Fappening)
a combination of local and remote backups is a good balance
if your drive fails, you have a backup locally
if your house burns down and your server is destroyed, you have a remote backup

ctp:
nobody objects to remote backups, just peer to peer backups

dotbmp:
if Company X has some massive Node.js dependency problem that fucks all their backups on shard #113 or whatever you have your local data

bvisness:
I think peer to peer backups are overly optimistic, especially given the crap state of home internet connections in the US and the social issues of getting enough people on board

dotbmp:
I don't see how it's not a privacy problem though
prevalence of incidents is low but severity is high

bvisness:
No there are for sure privacy problems, I don’t disagree there

dotbmp:
backups are a reliability problem, not a privacy problem or a centraliztion problem.
responding to this

ctp:
if you are uploading an encrypted copy of your stuff to a server, they literally cant read it unless your key is broken

dotbmp:
good thing you have that option with the common services :stuck_out_tongue:

bvisness:
I wouldn’t want to set up this home server thing only for my bandwidth to be forever dominated by other people’s data
You need to be fairly generous to opt into a peer-to-peer scheme

ctp:
peer to peer backups would a require storage factor (tenfold, etc) as a function of the uptime and drop-in-drop-out rate of the network, and im pretty sure realistically you would require a massive factor.

dotbmp:
it's not about what's available, it's about what's convenient, and that's Google Photos and iCloud

ctp:
if remote encrypted backups were a single click in user software, the market would be a reliability-dominated competition.

dotbmp:
even a single click is too much work
people back up their photos by default
it has to be a default setting

bvisness:
My ideal would just be to have a centralized backup scheme that is all encrypted the whole way through, and with multiple providers to choose from

ctp:
^ exactly

dotbmp:
@bvisness the privacy concern means having the files encrypted before being sent

bvisness:
Yeah
I want that

Ryan:
The value of convenience to consumers is super underestimated

dotbmp:
It's everything
And it's why new software/OS paradigms that market their technical capabilities always fail
(Looking at you, Linux)
Users don't give a single fuck
You can make SuperAwesomeDevOS which is a developer's dream and it's dead in the water for the consumer market if it looks like Windows NT's inbred cousin

bvisness:
Also if stuff doesn’t run on it

dotbmp:
Or if you have to use a terminal for anything
No

bvisness:
Extremely that!!

dotbmp:
All you need is a web browser
Really
ChromeOS :smile:

Ryan:
For the average consumer this is true, though if you are targeting certain working markets you need support for existing software
e.g. no artist is going to abandon Maya just to use a slightly less awful OS

bvisness:
I think ChromeOS was a smart move

dotbmp:
Right, but if you're trying to break into the consumer market going for professionals seems like a bad starting point

Ryan:
Yeah that's a fair proposition, unless one particular professional space is easier to tackle... Like spreadsheets or financial software or whatever (no data on this, just an example)

dotbmp:
The entire content creation ecosystem is a much harder conversion than a web browser
Or more generally average consumer software
Right
I think you go for average jane consumer first, and tackle 80% solutions for low-hanging fruit

bvisness:
Unfortunately the consumer space is also where you have to compete with the big guns

dotbmp:
So is the professional space
It's all big guns

bvisness:
I guess

dotbmp:
The professional space is a lot harder to move
Lot of sunk cost
You're not gonna get the US government on HandmadeOS in the next twenty years

Ryan:
Not without force...

dotbmp:
Haha

Ryan:
#HandmadeCoup

dotbmp:
HandmadeAutocracy

bvisness:
I think the home tech space is probably the easier market at the moment

dotbmp:
I think the "home server" thing overlaps a lot with IoT which is why it's very interesting to me

Ryan:
It does seem more tractable though significant consideration should probably be afforded to various small business markets

dotbmp:
IoT is ridiculous

Ryan:
I actually have my own plan of building a home and having my own personal server, IoT style, so it's an actually smart home
And it doesn't rely on anything external

dotbmp:
Let me flick a switch on my wall which calls out to a server in California which calls back to my $200 hub which turns off my light

AsafGartner:
You'd have to wrap the home server in something else, like a game console. I don't think people would want to buy a box that doesn't seem to do anything.

dotbmp:
I already covered game console
also, it's not just a home automation server
you'd use it to power thin clients

Ryan:
Maybe media in general. Like if you have a library of movies on the server you'd be able to stream to anywhere in the house

dotbmp:
most people just need to browse the web, you could power a family of five off an underpowered server

Ryan:
Or games, Stadia-style, except locally where the speed of light is fast enough, and you can have an actual wire

dotbmp:
exactly
TVs are already just thin clients

Ryan:
Very interesting idea

dotbmp:
I mean if you're thinking in terms of grand ideas with minimal consideration for how to get there, we need digital wiring
e.g. we should have USB-C plugs in the walls instead of three-prong electric sockets
(or a better standard than USB if we're being utopian)

Ryan:
#HandmadeUtopia

dotbmp:
Indeed

Ryan:
#MarchOnIoT

dotbmp:
Right, so say you have USB-C or Thunderbolt or whatever all through your house
Just plug a display into that
Couple plugs if it needs extra bandwidth
WiFi 6 is looking pretty good for handling multiple devices

AsafGartner:
I was just going to say, you should use wireless for data.

dotbmp:
Depending on the thing
Not for displays

AsafGartner:
Have some local wireless tech in the ceiling of every room.

dotbmp:
But so, maybe you just plug in a bluetooth multiplexer by your couch

AsafGartner:
Something that doesn't go through walls that well, to avoid interference.

dotbmp:
And that's how you connect controllers
And your TV USB-Cs to the server, which has a gaming bundle

AsafGartner:
Yeah, you'd only want very few cables.

dotbmp:
The biggest practical problem obviously is acquiring the economies of scale to make this happen
And I'm sure the big boys are working on this already, but in a way that we would find repellant
(without the home server)
But the cool thing is if the home is wired for data including like, light sockets, you don't need a wifi adapter and an arm chip in every light bulb

Ryan:
You mean you don't like updating firmware on your lightbulbs?
Come on

dotbmp:
You can have colored LED smart lights that just screw in and work
Fucking
Kill me

Ryan:
:smile:
I like your thinking dotbmp, let's make it happen

dotbmp:
Yeah I'd love to be able to work on something like this

Ryan:
I meant the tech thing
Not you being killed

dotbmp:
Hahaha
HA
:rofl:
I think this would be economically viable for families aside from the upfront costs, which you have to figure, if something like this were to happen it would be a decade-long process to get a substantial segment of the market caught up
but if a Chromebook can be bought for $200 how cheap could a thin laptop be

Rory:
The problem with data over power is noise. There were Ethernet adapters which used the power main. They didn’t work well. Electrical wiring is good for delivering power not for transmission. The wiring is generally low quality.

dotbmp:
just needs a display, wifi, data/charging plug, keyboard, mouse, and a little microcontroller to power the display
@Rory this all being hypothetical it would not use the existing copper wiring
so the question would be if you were getting the stuff in the absolute most bulk manner (like giant rolls of cabling or whatever) how cheaply could you wire a house with something like USB
while being able to transmit enough power to power fridges and stuff

Rory:
The challenge is updating building codes for a higher standard 110/220v main power.
It’s possible nobody will do it until their hand is forced.

dotbmp:
hmmm
right so part of the economies of scale problem is being able to buy lobbying power :joy:
plus yeah if you're the company actually doing the rewiring you have massive legal considerations

Rory:
Yes. If you can guarantee different standards manufacturers have less risk doing what you say. They know their devices work.

dotbmp:
but I assume you'd leave that to a distributed assortment of contractors

Rory:
And the building standards we have today are just happenstance of legacy.
Going back to Edison vs Tesla.
One way is getting codes changed. Other way is make it so ubiquitous that codes follow. The second isn’t likely these days with physical things.
Like, the us still uses imperial measurements for everything. Changing power technologies is star trek level.

dotbmp:
haha well imperial -> metric would be a bigger task
anyway my take is all of this is talk, the natural starting point is a new platform (gotta make the millions somehow :^) )

Ryan:
When doing science: "The metric system is a more logically-structured and well-thought out system for defining measurements."
All other times: ":flag_us: :eagle: :red_circle: :white_circle: :blue_circle: It's about 1000 feet until the turn"

dotbmp:
which you'd distribute as a sort of shared runtime for windows/mac/linux/ios/android apps, users wouldn't know they're using this platform
then when you have a substantial dev/user base you put it on top of a microkernel
and some segment of the market will use your OS, but it will be interoperable with apps using the platform, more importantly
so there will be a network-effect-utilizing ease of transition for the most heavily invested users and devs
it leaves a bridge back to "legacy" platforms
you'd also have to pick your battles
it's very unlikely you'd get 80% of graphic design work done on your platform within 10 years
or even 20%
so you let designers use windows and macos and work on making the content creation bridge better instead
rather than trying to make a photoshop/illustrator killer
I think a new paradigm is reasonably doable if you focus on a really strong core ecosystem around what users actually care about
messaging/social media, calendars and scheduling, interoperability with other devices, media distribution and sharing

Ryan:
Hmmm that is interesting dotbmp. I see the argument but am worried about abstraction over the underlying ecosystem leaking
Like how many paradigms will de facto transfer over, even if we don't want them to?

dotbmp:
yeah it's a big concern
and if you go for a no-compromises position, you're sacrificing a lot of efficiency

Ryan:
It would maybe be important to understand the vision for the custom hardware (and everything on it that would come later, like an OS) very early so that abstraction over existing infrastructure is done more responsibly

dotbmp:
yeah, and striking a balance between idealism and practicality
like, casey's standardized ring buffer I/O idea is great imo
but realistically you have to support USB
even if you had the ability to push a new, simplified standard, you need legacy support
I think it's probably reasonable to use RISC-V as a target architecture
it's not perfect but it's very simple compared to the alternatives, open, about 1/10th the IP cost of ARM, and obviously a big up and comer gaining a lot of investment right now
and as long as you have the CPU architecture in mind, that's pretty much most of the hardware consideration in terms of system design
is miotatsu here haha cause I would hate to reiterate this stuff on the forums :rofl:

bvisness:
probably not
better start copy-pasting :)

dotbmp:
:rip:
10 posts
None
Simple Computer Company
Re: RISC-V and graphics, no, as of present there is no equivalent to either SoC graphics like we see in smartphones with Tegra or add-on graphics cards like x86. However, of course RISC-V supports PCI-e so while proprietary concerns make this a nightmare, technically drivers for existing GPUs are a distinct possibility - and I'm sure it will happen eventually, probably for non-consumer cards first like Quadro, deep-learning, compute, crypto mining solutions.

It's also perfectly reasonable, in my opinion, to imagine fully programmable RISC-V graphics extensions that introduce "graphics cores" and extended instructions for graphics pipelines. SoC/integrated graphics, but fully programmable. Of course, someone would have to develop the IP, and without action on part of the RISC-V committee, the extensions themselves. RISC-V has vector extensions in the works.

Ultimately I think this would be a forward-looking and entrepreneurial platform, looking at the RISC-V environment 5 or 10 years down the road, as well as seeking to influence the development of that environment toward its own interests. Maybe that's too ambitious, but the entire premise requires more than a little will to power to entertain.
Neo Ar
165 posts / 1 project
riscy.tv host
Simple Computer Company
I get the comparison, but chromebooks are the FARTHEST thing from simple and good quality.

This is not a clean-slate redesign, rather you take existing infrastructure and simplify. For the question of OS, you'd be starting with a Linux (or FreeBSD) base and deleting/simplifying kernel code. Reasoning is that we are not tackling one sub-area, we are tackling the whole stack, and we want to make an actually viable product. To be practical, people need to be able to run existing, shitty & complex software unless this small company is going to write a better alternative to everything from scratch in addition to hardware, firmware, etc. Much easier to simplify something existing - you ship and support an order of magnitude less (good quality) code on the system and leave complexity you can't/won't tackle to volunteer/community support. In reference to Casey's 30 Million Line Problem talk, "everything gets better when the code gets smaller." The system should be designed to make it trivial to ship a piece of software that can be booted from something like a USB stick or an SD card (but the laptop has a normal OS on it nonetheless).

A portable layer on top of an existing OS is 100% the wrong approach - you are ADDING code to the system, making it MORE COMPLEX so that later you can supposedly swap out the complexity underneath in a future product... Will you really manage to swap out all the complexity under the hood? If not, you've just added more garbage onto the pile. Instead, you actually simplify the stuff under the hood. You don't need to write a new OS from scratch - nothing is stopping you from DELETING/SIMPLIFYING EXISTING CODE. Don't even get me started on a VM being a "solution"...

Non-laptop product ideas I'm not going to address here, as that is off-topic. The company would not necessarily stick solely to the laptop market, the company name/thread topic of "Simple Computer Company" alludes to the fact that the broad goal is to simplify computers in all forms. I just think a laptop is a good concrete goal for a first product because:
  1. Laptops are an existing and established market: we know what they are, we know what they do.
  2. There aren't any good ones on the market.
  3. A good quality laptop would directly help the company make future products.


Supporting a web browser is one concrete thing that was mentioned in the discussion, let's run that through those basic questions I mentioned:
  • What problem is Chrome trying to solve: A client to access multimedia content over the network
  • Is this actually necessary? Yes in that not having an internet browser would be a deal breaker for most people
  • Does it solve that problem? Yes, poorly and unreliably
  • Is it the simplest solution that meets all known constraints? Hell no, but arguably a constraint here is access to the internet as it exists today, so while a clean rethink of the internet as a whole would be highly desirable, that is not the problem being tackled here.
  • Does it introduce problems of its own? Yes, existing browsers such as Chrome are roughly as complex as OS kernels in LOC and even if this could be dramatically reduced, internet standards are living and thus a full-featured browser can not be shipped as a finished product.
  • Can identified problems be resolved without significant increase in complexity? It may be viable to ship a browser that only handles a small subset of internet standards such as being able to render HTML and display images but not run javascript/webasm, etc. In either case, it is a critical component and thus some simple package management infrastructure should be provided so that the community can maintain builds of browsers such as chromium for the system. While we will not support such browsers ourselves, we CAN tackle and support the infrastructure to defer that kind of problem to the community.


bpunsky
Re: RISC-V and graphics, no, as of present there is no equivalent to either SoC graphics like we see in smartphones with Tegra or add-on graphics cards like x86. However, of course RISC-V supports PCI-e so while proprietary concerns make this a nightmare, technically drivers for existing GPUs are a distinct possibility - and I'm sure it will happen eventually, probably for non-consumer cards first like Quadro, deep-learning, compute, crypto mining solutions.

It's also perfectly reasonable, in my opinion, to imagine fully programmable RISC-V graphics extensions that introduce "graphics cores" and extended instructions for graphics pipelines. SoC/integrated graphics, but fully programmable. Of course, someone would have to develop the IP, and without action on part of the RISC-V committee, the extensions themselves. RISC-V has vector extensions in the works.

Ultimately I think this would be a forward-looking and entrepreneurial platform, looking at the RISC-V environment 5 or 10 years down the road, as well as seeking to influence the development of that environment toward its own interests. Maybe that's too ambitious, but the entire premise requires more than a little will to power to entertain.


An SoC with integrated graphics would be ideal and a very real possibility. Ideally the provided gfx should have open documentation of the ISA so that it can be programmed directly without the need of a driver. If the company partnered with SiFive, they could potentially help engineer this as an extension of their core IP. If the company is unable to pursue something like that, a PCIe graphics card is always an option. We would need to produce a mobo for the system with the PCIe support and we'd need driver support for the card. Other than that, this is a totally viable solution. The RISC-V PC I demoed at Handmade Seattle had a graphics card (Radeon HD6450, Caicos drivers) in it communicating with the RISC-V chip via PCIe support provided through Microsemi's expansion board (FPGA).
Simon Anciaux
1341 posts
Simple Computer Company
miotatsu
2. There aren't any good ones on the market.


While I tend to agree with that (but I never had a laptop myself), does the target audience agree with that ? And what is the target audience exactly ?

When I talk with friends about how computer or operating systems are not good in my opinion, they generally don't share my views and are "happy-ish" with how things are at the moment. While we agree that there are problems, my friends think most issues are just an annoyance on the moment, and after years of having them it's just normal and inevitable to them.

Solving those problems would be nice for them but not if it means they need to change their habits which would be needed with new computer / OS (I'm guessing here since there is no way of knowing for real). e.g. They would love Microsoft to stop forcing updates and shitty software, but they still want Windows.

In short, I'm not sure that most people want a big change. So defining the target audience and the target audience "needs" should be a early step. Even if the target audience (at first) would be "developer", developer need to ship/test software for Windows, so the laptop would need to allow that.
Neo Ar
165 posts / 1 project
riscy.tv host
Simple Computer Company
mrmixer
miotatsu
2. There aren't any good ones on the market.


While I tend to agree with that (but I never had a laptop myself), does the target audience agree with that ? And what is the target audience exactly ?

When I talk with friends about how computer or operating systems are not good in my opinion, they generally don't share my views and are "happy-ish" with how things are at the moment. While we agree that there are problems, my friends think most issues are just an annoyance on the moment, and after years of having them it's just normal and inevitable to them.

Solving those problems would be nice for them but not if it means they need to change their habits which would be needed with new computer / OS (I'm guessing here since there is no way of knowing for real). e.g. They would love Microsoft to stop forcing updates and shitty software, but they still want Windows.

In short, I'm not sure that most people want a big change. So defining the target audience and the target audience "needs" should be a early step. Even if the target audience (at first) would be "developer", developer need to ship/test software for Windows, so the laptop would need to allow that.


Target audience is anyone who uses laptops (this goes along with point 1 of it being an established market). It's not important whether the target audience agrees with point 2, the product would be so far ahead of the competition that it speaks for itself. It should be one of those things where you sit down and start to use it and just instantly "get it," that you'd need this in your life. No need for marketing, branding, advertising, etc. All the $$$ goes into making the best possible product. When done right, products can carry themselves with word of mouth.

Windows is out of our hands, it's Microsoft's job to put out Windows for RISC-V. If they don't have that out when the laptop is ready to hit the market, then of course that limits the target audience but fundamentally there is no reason the system would not be capable of running it, or anything else. It is important to note here that the kind of simplicity we are shooting for here is not some clean-slate that throws away legacy. Simplicity does not have to introduce limitations, done right it EXPANDS capability rather than limits.
Miles
131 posts / 4 projects
Simple Computer Company
the product would be so far ahead of the competition that it speaks for itself. It should be one of those things where you sit down and start to use it and just instantly "get it," that you'd need this in your life. No need for marketing, branding, advertising, etc.


This seems overly optimistic to me.

It is important to note here that the kind of simplicity we are shooting for here is not some clean-slate that throws away legacy. Simplicity does not have to introduce limitations, done right it EXPANDS capability rather than limits.


I don't necessarily mean to rebuke you, but where does the simplicity "come from" then? RISC-V is able to be simple because it is a new ISA, in other words because it breaks backwards compatibility. There will surely be some plainly unnecessary cruft in the software and hardware we'd be replacing or paring down, but almost certainly not enough to bring about the revolutionary level of simplification you're counting on without also substantially cutting and/or changing features/behaviors, in my opinion.
Neo Ar
165 posts / 1 project
riscy.tv host
Simple Computer Company
Edited by Neo Ar on
notnullnotvoid

This seems overly optimistic to me.


Nah, some really basic things go a huge way for this, like booting as fast as possible, a keyboard and touchpad that feel really good and work flawlessly, little details in the design that show that care was really put into every aspect of it, that kind of thing. I think making a laptop FEEL miles ahead of the competition is actually one of the most trivial aspects of it.

notnullnotvoid

I don't necessarily mean to rebuke you, but where does the simplicity "come from" then? RISC-V is able to be simple because it is a new ISA, in other words because it breaks backwards compatibility. There will surely be some plainly unnecessary cruft in the software and hardware we'd be replacing or paring down, but almost certainly not enough to bring about the revolutionary level of simplification you're counting on without also substantially cutting and/or changing features/behaviors, in my opinion.


The simplicity comes from this being a whole simplification of the entire stack, simplifying the hardware can drastically reduce the complexity by e.g. making direct programming of hardware practical, eliminating need for drivers, which is one of the biggest problems, e.g. see Casey Muratori's 30 Million Line Problem talk, or Megan Wach's recent Hackaday Superconf keynote where she talks about all the ISAs on a modern SoC with the point that RISC-V is in a position to replace all that (due to being open and having a modular design). I disagree that cutting/compromising features/behaviours is necessary, let alone in substantial quantity. On the software side, it isn't so much about fixing all the complexity as it is about providing a good quality basic system that does most of what you need while still enabling you to pile all the old crap onto the system. As I mentioned before, we wouldn't be solving the browser situation but there is no reason you can't run chrome on that. The same kind of thing applies to other many things, X11 being the first that springs to my mind. You just pull in community provided nasty-linux-legacy-layer package, install a traditional linux distro, MS Windows, or whatever else and you're off to the races. The point is that:

  1. The hardware enables simple software with whole-system open ISA while still being able to run anything today
  2. The system comes with simple software that takes advantage of that
  3. The provided software can run legacy with some community-glue, or...
  4. You can easily run individual software off bare metal, or...
  5. You can forget about simple software and install a normal linux distro or whatever else


The OS shipped on the thing would probably end up being like a simple hypervisor (think QubesOS with lots of near-bare-metal sandboxed applications) and nasty-linux-legacy-layer package would provide a more full featured linux image that community packages like chrome can run on, that kind of thing.
Miles
131 posts / 4 projects
Simple Computer Company
Edited by Miles on
Nah, some really basic things go a huge way for this, like booting as fast as possible, a keyboard and touchpad that feel really good and work flawlessly, little details in the design that show that care was really put into every aspect of it, that kind of thing. I think making a laptop FEEL miles ahead of the competition is actually one of the most trivial aspects of it.


Win10 boots to desktop in around 15 seconds on my laptop (half of that is bootcamp). I'm sure we could do much better, and it'd love to have a computer that boots right away, but most users (including me) are already trained not to restart their computers very often - especially for laptops where you can just shut the lid and put them in a low power state.

For keyboard+trackpad feel macbooks are already pretty much perfect, although the newest ones of course have other hardware problems like the trackbar, and everything being USB-C - But that's a compatibility problem, and again, maintaining compatibility with all the existing standards (old USB, HDMI/displayport, 3.5mm) is exactly where the complexity starts to creep in...

In the end, the hardware itself from a *user's* point of view, doesn't need much simplification. It's what's happening on the inside that could be simplified dramatically, and those simplifications can then result in much better software. But they do need to result in substantially better software, otherwise the end user has no reason to care. And even once much better software is there, the claim that there is "no need for marketing, branding, advertising, etc." is extremely dubious at best.

we wouldn't be solving the browser situation but there is no reason you can't run chrome on that. The same kind of thing applies to other many things, X11 being the first that springs to my mind. You just pull in community provided nasty-linux-legacy-layer package, install a traditional linux distro, MS Windows, or whatever else and you're off to the races.


This is sounding more and more like there is no defined target audience.

If it doesn't run a web browser and a familiar-enough desktop environment out of the box, most laptop users are already out.

Creative professionals will need to continue using whatever platform they're already on, unless a better alternative to their entire toolset is available on the new platform, which sounds like it is not at all on the roadmap. They might be okay with having to manually install windows (which probably isn't happening soon, or at least we can't count on it unless/until microsoft announces risc-v support) or *maybe* linux, but at that point what simplicity are they benefiting from?

Developers and power users would be more willing to adopt a new platform, which I guess makes them the target audience purely by process of elimination, but developers likely still have to ship code to existing platforms (which I thought was one of the ideas behind starting with linux and paring it down, but now it sounds like that's no longer the plan?), so they will need a good reason to migrate. Maybe a rock-solid editor/compiler/debugger ecosystem could be that reason?

From a business perspective I think there needs to be a much more specific plan for what users we're trying to attract and how we would attract them, rather than just handwaving the question by saying users will just intuitively know that it's good - sure that's a good goal, but how exactly will they know, and why exactly will it be good for them? There needs to be a specific concrete reason that users provably actually care about.
Neo Ar
165 posts / 1 project
riscy.tv host
Simple Computer Company
Edited by Neo Ar on
notnullnotvoid

For keyboard+trackpad feel macbooks are already pretty much perfect, although the newest ones of course have other hardware problems like the trackbar, and everything being USB-C - But that's a compatibility problem, and again, maintaining compatibility with all the existing standards (old USB, HDMI/displayport, 3.5mm) is exactly where the complexity starts to creep in...


I haven't used a macbook myself, so I can't comment on that but you may be right, if that is the case we'd be shooting for matching or exceeding the quality of the macbook for those then. We'd maintain compatibility with existing standards unlike Apple and that does indeed add hardware/firmware complexity, but the complexity of those things can be relatively self-contained.

notnullnotvoid

In the end, the hardware itself from a *user's* point of view, doesn't need much simplification. It's what's happening on the inside that could be simplified dramatically, and those simplifications can then result in much better software. But they do need to result in substantially better software, otherwise the end user has no reason to care. And even once much better software is there, the claim that there is "no need for marketing, branding, advertising, etc." is extremely dubious at best.


I agree that it does need to result in substantially better software, which is why the company would be tackling both software and hardware. It is true that the no marketing/branding/advertising needed is a bold claim and I'm not going to try to convince you otherwise, that is really just more of a personal opinion on my side. I'd be willing to peddle back on that if it makes the difference between getting investors on board or not, for example.

notnullnotvoid

This is sounding more and more like there is no defined target audience.

If it doesn't run a web browser and a familiar-enough desktop environment out of the box, most laptop users are already out.

Creative professionals will need to continue using whatever platform they're already on, unless a better alternative to their entire toolset is available on the new platform, which sounds like it is not at all on the roadmap. They might be okay with having to manually install windows (which probably isn't happening soon, or at least we can't count on it unless/until microsoft announces risc-v support) or *maybe* linux, but at that point what simplicity are they benefiting from?

Developers and power users would be more willing to adopt a new platform, which I guess makes them the target audience purely by process of elimination, but developers likely still have to ship code to existing platforms (which I thought was one of the ideas behind starting with linux and paring it down, but now it sounds like that's no longer the plan?), so they will need a good reason to migrate. Maybe a rock-solid editor/compiler/debugger ecosystem could be that reason?

From a business perspective I think there needs to be a much more specific plan for what users we're trying to attract and how we would attract them, rather than just handwaving the question by saying users will just intuitively know that it's good - sure that's a good goal, but how exactly will they know, and why exactly will it be good for them? There needs to be a specific concrete reason that users provably actually care about.


It'd have a familiar desktop environment out of the box, just not built on X11/using existing software ecosystem. I think the company would evaluate starting with Linux and pairing it down, I can't say for sure what route you'd go down without first doing the analysis of systems as they exist today. The Linux kernel can function as a hypervisor (KVM) but it could easily be the case that it would be better to start with something like Xen like QubesOS. In either case, you do want to analyse something like a popular Linux distro, Windows, etc. to inform the kind of user-facing software that should be shipping on the system. All these things would be seriously considered and informed decisions would be made based on the knowledge of these prior works and what we are trying to accomplish.

I think you make a good point here that the software provided on the system out of the box should have some killer application(s) that draws people to the platform. It is tried and true that software alone can get people to buy hardware (e.g. console exclusive titles) so that is worth some serious consideration. I'm not sure yet what the killer application(s) of this product should be, I need to think about this more and I'm open to suggestions! It should be something that the simplicity of the system uniquely enables us to do, highlighting the benefits of what this kind of thing enables us to do in software, and we DO need a clear target audience for whatever the killer application(s) is/are...