They want to make sure you can't do it by yourself, so you keep paying them...A.I. want to make you dependent, and A.I. uses psychological manipulation to please you. So it avoids critics...
They want to make sure you can't do it by yourself, so you keep paying them...A.I. want to make you dependent, and A.I. uses psychological manipulation to please you. So it avoids critics...
Why, tho?I refuse to code with AI.
I do use it as a search engine mostly for firearm reloading specs and pressures.
It really is quite useful for this.
Very true. Especially the No Fear [of looking stupid] outlook...important for eveything in life.And here's another little tip, if you want to learn programming. Try to work with other people, show them your working, and never be afraid to make mistakes or ask questions. No matter how many decades you do this job, you are going to make mistakes, trust me, so you may as well get used to it. There are no mistakes, just learning opportunities (as long as you make the effort to actually learn from them, that is!). You will find that by showing your work to other people, they will enjoy mercilessly pointing out where you screwed up, as you will do to them, and you will all have fun finding each others mistakes and arriving at a good solution. In a group of people working together like that, "the whole is more than the sum of the parts" applies; the 'group mind' achieves more than a single mind working alone, and it adds a lot of fun and enjoyment to the job, Having a sense of humour helps too.![]()
Agreed on all points.Well, I guess AI might make a good sparring partner, if it actually knows what it's talking about (it sounds like it screwed up in your assembler example). But you're not going to get the interpersonal interplay with a machine that you get with other humans, I think. You have to actually be able to relate to and perhaps even like and enjoy the company of the guys you're working with (in some cases, anyway), shocking, I know. I've briefly mentioned ths before elsewhere, but this is where the western indivdualistic, adversarial culture wins out, versus the eastern consensus culture. I think it's no accident that computer technlogy and software all arose in the west, it's a product of western culture as much as anything. That doesn't mean the other guys can't learn to do what we do though.
Interesting. I've worked with both groups, westerners (obviously) and also people from Japan, China, India, and been amazed by how large the cultural differences can be. I don't know about the hunting versus farming hypothesis, if you look back in time, the archaeological record shows farming arose roughly around the same time in both the west and the east (around 7000 years ago), and asia had just as many hunter-gatherers in the pre-agriculture period as we did here, and they also had just as many warriors and wars (genghis khan!). One thing's for sure, the roots of the different cultures are very old, it goes back a long way.
[edit> not so] Quick points:Interesting. I've worked with both groups, westerners (obviously) and also people from Japan, China, India, and been amazed by how large the cultural differences can be. I don't know about the hunting versus farming hypothesis, if you look back in time, the archaeological record shows farming arose roughly around the same time in both the west and the east (around 7000 years ago), and asia had just as many hunter-gatherers in the pre-agriculture period as we did here, and they also had just as many warriors and wars (genghis khan!). One thing's for sure, the roots of the different cultures are very old, it goes back a long way.
I would relabel it:
#include <sqlite3ext.h>
SQLITE_EXTENSION_INIT1
#include <jim.h>
static void jim2sql_res(sqlite3_context *ctx) {
Jim_Interp *interp = (Jim_Interp *)sqlite3_user_data(ctx);
jim_wide iv; double dv;
Jim_Obj *resObj = Jim_GetResult(interp);
Jim_IncrRefCount(resObj);
if (Jim_GetWide(interp, resObj, &iv) == JIM_OK)
sqlite3_result_int64(ctx, iv);
else if (Jim_GetDouble(interp, resObj, &dv) == JIM_OK)
sqlite3_result_double(ctx, dv);
else
sqlite3_result_text(ctx, Jim_String(resObj), -1, SQLITE_TRANSIENT);
Jim_DecrRefCount(interp, resObj);
}
static void exprFunc(sqlite3_context *ctx, int argc, sqlite3_value **argv) {
Jim_Interp *interp = (Jim_Interp *)sqlite3_user_data(ctx);
const char *ex = (const char *)sqlite3_value_text(argv[0]);
Jim_Obj *exprObj;
if (ex==NULL) {sqlite3_result_null(ctx); return; }
exprObj = Jim_NewStringObj(interp, ex, -1);
Jim_IncrRefCount(exprObj);
if (Jim_EvalExpression(interp, exprObj) == JIM_OK) jim2sql_res(ctx);
else sqlite3_result_error(ctx, Jim_String(Jim_GetResult(interp)), -1);
Jim_DecrRefCount(interp, exprObj);
}
static void jimFunc(sqlite3_context *ctx, int argc, sqlite3_value **argv) {
Jim_Interp *interp = (Jim_Interp *)sqlite3_user_data(ctx);
const char *code = (const char *)sqlite3_value_text(argv[0]);
if (code==NULL) { sqlite3_result_null(ctx); return; }
if (Jim_Eval(interp, code) == JIM_OK) jim2sql_res(ctx);
else sqlite3_result_error(ctx, Jim_String(Jim_GetResult(interp)), -1);
}
static void jimvFunc(sqlite3_context *ctx, int argc, sqlite3_value **argv) {
Jim_Interp *interp = (Jim_Interp *)sqlite3_user_data(ctx);
Jim_Obj **objv; int ix; const unsigned char *t;
if (argc < 1) {sqlite3_result_null(ctx); return;}
for (ix = 0; ix < argc; ix++)
if (sqlite3_value_type(argv[ix]) == SQLITE_NULL) {
sqlite3_result_null(ctx); return;}
objv = (Jim_Obj **)Jim_Alloc(sizeof(Jim_Obj *) * argc);
for (ix = 0; ix < argc; ix++) {
t = sqlite3_value_text(argv[ix]);
objv[ix] = Jim_NewStringObj(interp, (const char *)t, -1);
Jim_IncrRefCount(objv[ix]);}
if (Jim_EvalObjVector(interp, argc, objv)== JIM_OK) jim2sql_res(ctx);
else sqlite3_result_error(ctx, Jim_String(Jim_GetResult(interp)), -1);
while (ix--) Jim_DecrRefCount(interp, objv[ix]);
Jim_Free(objv);
}
static void JimInterpDestroy(void *pApp) {
Jim_FreeInterp((Jim_Interp *)pApp);
}
#ifdef _WIN32
__declspec(dllexport)
#endif
int sqlite3_extension_init(sqlite3 *db, char **pzErrMsg,
const sqlite3_api_routines *pApi) {
Jim_Interp *interp;
SQLITE_EXTENSION_INIT2(pApi)
interp = Jim_CreateInterp();
Jim_RegisterCoreCommands(interp);
if (sqlite3_create_function_v2(db, "expr", 1, SQLITE_UTF8, interp, exprFunc,
NULL, NULL, NULL) != SQLITE_OK) return SQLITE_ERROR;
if (sqlite3_create_function_v2(db, "jim", 1, SQLITE_UTF8, interp, jimFunc,
NULL, NULL, NULL) != SQLITE_OK) return SQLITE_ERROR;
if (sqlite3_create_function_v2(db, "jimv", -1, SQLITE_UTF8, interp, jimvFunc,
NULL, NULL, JimInterpDestroy) != SQLITE_OK) return SQLITE_ERROR;
return SQLITE_OK;
}
I already dressed myself in to bed sheet.This turned to philosophical thread xD
View attachment 27435
Some interesting points.[edit> not so] Quick points:
Farming in northern hemisphere was not as prevalent.
Phenotype specific traits were evolved over millennia most likely, not in a "few" years of known history.
Europe is special because it has many defend-able regions prohibiting centralization and huge empires promoting farming and conformity.
Mongols were hunters and pastoral. Exactly as early Europeans. So called Aryans domesticated horse among other animals (cows certainly given lactose tolerance genetic spread, wolves maybe), invented wheel and conquered most of the Northern hemisphere as far as Iran, certainly NW India and maybe even NW China (if China allows exploration of the most ancient pyramids there) and as South as today Palestine and maybe Egypt, given the red haired pharaohs (not speaking of Cleopatra - she was obviously of Macedonian origin; Tutanchamon genetic trace was mapped to Czech Republic of all places).
Mongols and Aryans had very important distinction compared to others. Warrior caste had the prim for longer. Not so with Sumerian priests, or Chinese bureaucrats or Levant merchants or Hindu cows.
Europeans had Aristocracy (derived from word Aryan). Emperors and kings were more dependent on elite warriors in Northern terrain than any other civilization.
And I would argue Warrior spirit necessitates, for survival through camarradarie, developing the sense of personal honor. Doing right in the eyes of gods (the best self) instead of doing right in the eyes of your fellow merchants, farmers or priests - saving face in front of the collective while still being in fact a cvnt.
One might argue, and I often do lol, that Protestant reformation was the result of this cultural preference setting for individual responsibility manifested in one on one relationship with the deity.
All I can say is, that's one hell of a macro generator. Well, does it work? It looks like our job is dead then... don't go into computer programming, kids...I asked claude with one or two lines to make a program with a specific functionality and got the below lines, I made only aesthetic changes.
...
Yes, it works as expected. You can copy and paste it in claude / google, then ask:Well, does it work? It looks like our job is dead then... don't go into computer programming, kids...
You did not understand / ask google or claude, what the program does.Sure, it's fairly simple, and doing sql ops in C is always pretty verbose. If you used a higher level language like Perl you could probably get it quite a lot shorter.
This is probably a more accurate depictionThis turned to philosophical thread xD
View attachment 27435
You're right, I didn't, I got you to tell me instead. And what I wrote was a load of rubbish. Well done.You did not understand / ask google or claude, what the program does.
It is not writing SQL in C, it is extending sqlite3's SQL with three new functions:
expr, jim, jimv.
There is a button for 'thanks' and 'like', not for 'do not like' ...Well done
Thanks. You can also say the truth ...you're one of the best