Category: Daily Report

  • Day 30 – Month One Down!

    Day 30 – Month One Down!

    This has probably been the most eventful month that I’ve had for a long time.

    Giving myself the tactical stress of a hard deadline has been fun and invigorating… albeit mixed with the occasional anxieties.

    I had been stuck in neutral for quite a while with the handbrake on. The decision to just go and do it, is starting to have ripple effects in ways that I didn’t really imagine.

    The one thing I’ve noticed is how insane the demand is for information on AI. The uptake of ChatGPT must be unrivalled in market history (beyond software) and it boggles the mind that effectively one product is so versatile that everyone is using it in their own way.

    I’d like to know how much of the available information we have actually trained it on now. I imagine somewhere there is a copy of a model which has actually been trained on all the copyrighted material the AI companies can find. If you were Google or Microsoft with all their infinite data – everyones emails, work… all the software code, all the books … all the websites … they must have a copy that is actually trained on everything; just not released that to the public.

    Then there’s doubtless the military and intelligence agencies which would have had this technology for way longer. How far are they down the road with this? Backdoor into Facebook, link it with all the other data they have, and suddenly you can mimic every person … you can synthesise insights over scale.

    That’s not even beginning to mention the robots that are coming down the pipeline…

    More to come over next few weeks…

  • Day 29 – Carrying On

    Was a bit braindead this morning as I stared at the screen trying to understand some python, so decided to goto the recycling centre and drop some stuff off. It’s absolutely crazy how much we throw out without even trying to repair it. An entire relatively new BBQ, a fitness bike, a leaf blower, dozens of TVs, dozens of laptops… it always blows my mind when I realise the level of our waste.

    The council have now started taking bookings for the recycling so there’s data now on usage, but you’d have to use the cameras better positioned to identify what we are throwing away. I suppose this is probably already done at the next step anyway.

    Today I also spent ages trying to sort out keycloak on a digital ocean droplet. There were some complications but eventually the old off-and-on sorted it.

    I also had a good call with a conversational AI company today that I can partner with.

  • Day 28 – Building An AI Startup : Embracing Uncertainty & Getting More Organised

    The AI market is moving at a rapid pace. Every day I see another project that is awesome or at least somewhat interesting.

    The fundamental models themselves keep iterating, and OpenAI keep improving. And all the incumbent software services are implementing more tooling.

    It’s fairly unnerving but at the same time sometimes you sit down and do some programming and you realise how awesome it is to just having programming helpers at your side. You can do pretty much anything that you can think of now, and that is incredibly inspiring. It definitely helps to have a great basis of programming knowledge.

    Anyway, I’ve been continuing some R&D experimentation, and there’s some potential positives in the pipeline but I won’t talk about them just yet.

    I am still very much in the uncertain stage but the roadmap is straightforward:

    • AI Consultancy to help people navigate through AI
    • AI Products that use automation and language models to produce new forms of value

    The only certainty is that Microsoft will dominate

    I was having a conversation yesterday, and a really good point was made. A lot of AI products are coming out at the moment, but as soon as Microsoft decides to properly implement all forms of media creation in Microsoft Word, the game is kind of over for many of them. I don’t use Office or Teams, and assume there is already rudimentary implementation… but at some point there is going to be a high quality implementation of AI into those products. At that point, loads of ill positioned startups will be wiped out.

    I should probably buy Microsoft shares...

    Especially once the new lightwave processors become mainstream a few years into the future… we will just have language models embedded into the operating system, and everyone will be able to generate any form of media. A new wave of creative output is already being unleashed, but it’s nothing compared to what’s coming.

    Microsoft are clearly dominating in terms of positioning. They are just waiting and observing what’s going on, and when the timing is right they will pull the trigger and implement them.

    Finding Market Opportunities

    The AI Consultancy will also expose me to opportunities in the market for AI, so it’s a key strategy going forward. It’s also where my bread and butter money will come in. And this is still on top of my normal web development projects that may come in, although I want to predominately focus on AI driven projects.

    Embracing Uncertainty

    Some people are still expecting me to immediately have all the answers already. I’m only a month in, I have some ideas, but I also thought at the beginning I would be spending three months just doing R&D before anything came up that resembled a product market fit. I don’t have the answers, I don’t have a completely clear idea but I’m on the right path and that’s what counts.

    That in itself can be really unsettling to some people. They want to clearly know what the plan is. And the uncertainty is somewhat unsettling to me, and I still have to be modest and honest enough to admit that nothing may come of this. I am smart enough to make something happen, but still, life doesn’t always work out the way you want it to. And if that happens, it’s also fine. As I said on day one … if things really don’t work out this year, and i’ve given it my 100%, then I think i’ll be fine deciding to take the easier albeit less exciting route of being an employee. I know I’ll be a good asset to most startups or companies, so whenever I get nervous about things I do remind myself of this.

    Embracing uncertainty involves just going for it.

    It’s not that I have a backup plan, it’s just I know I will be alright if it doesn’t work out. Might be tight for a while, but it will still be OK.

    Getting More Organised

    That said, I still want to play to win, and right now whilst I potentially can bring in a few people to help, I need to get my own time optimised and effective.

    Each day I am attempting to get more organised.

    For instance today I focused on sales and marketing separately.

    I followed up on three sales leads, and I wrote some automation scripts for a marketing which generated webpages from markdown.

    I am keeping a list of all the tools i come across, amongst all the other things that crop up each day. I am working toward setting up systems and automations in every single area of the company. And I’m fairly certain as I build the software to do this, others will benefit from it.

    Tired again, but managed to write something down. One thing I’ve learnt from this process is that just writing this online journal helps cement thought processes.

  • Day 27 – https://www.sesame.com/

    Time got away from me today so only a short update

    Go and use this Conversational AI Voice…

    https://www.sesame.com

  • Day 26 – Excited about Wan!

    Today messed around with HuggingFace trying to get WAN to work. I thought it would work on my MBP, but turns out you definately need a GPU to do it. I learnt a bit about PyTorch today, and a bit more python stuff.

    Anyway, I am hoping my friend is going to put together a GPU server for me so I can do some experimentation. I could rent a server, but would be good to see how we can put a GPU server together through virtualisation with KASM.

    Wan is going to blow peoples minds. It turns out AI’s Open Source libraries are more than rivalling anything the big boys can do. Their moat really isn’t as big as they thought it would be. With WAN eventually everyday people will be able to make cinematic quality videos easily. It’s pretty crazy stuff. Check out the video on their page.

    https://huggingface.co/Wan-AI/Wan2.1-T2V-14B

    Also today:

    • Fractured my MBP screen the other day. £700 to repair! Only cost £1700 new anyway. It’s only a slight pain when i’m out and about, else I just use monitors. But the resale value has plummeted which is rubbish.
    • Bought 8TB external drive so I can try out some bigger models and also do more YouTube stuff
    • A few tweaks on the AI website
  • Day 25 – I gave up caffeine in November, and feel so much better.

    It’s sunday and I haven’t done any work beyond flicking through my notebook looking at all my ideas and having some conversations. I meditated, did breathwork and bit of yoga in the sun for four hours. After the winter i’ve had, I deserve a bit of a rest in the sun, especially as apparently it’s leaving us shortly again.

    Wanted to post something though, and wanted to talk about caffeine. It’s been at least a quarter year since removing caffeine from my life permanently.

    There are two insane benefits:

    • I am way more relaxed, and that means I am way more happy
    • I can concentrate and think in a much more sustained and deeper way

    Caffeine literally causes your body to have elevated stress levels. Everyone has a threshold of stress beyond which things start falling apart. Life can be naturally stressful. When you add an artificial stressor to that, often first thing in the morning, and then often repeatedly throughout the day… and you do this for years… you are literally keeping your body in perpetual stress completely pointlessly.

    I have realised that in my adult life I had never knew what feeling genuinely relaxed was until I got caffeine out of my life. And it’s obvious … caffeine is liquid stress … there is no nutritional value, it tastes bad when your tastebuds regain their sense, and there is no energy in it. So throughout my adult life, every morning I just added to my stress levels without knowing about it.

    Do that for two decades, like most people do, the accumulated wear and tear on your body and mind will be apparent.

    I’ll talk more about caffeine in the future. It’s a really interesting subject to learn about because it helps you understand how societal and cultural norms are often a form of brainwashing that do you no good.

    That’s it for Sunday.

  • Day 23 – Some Thoughts

    Day 23 – Some Thoughts

    23 days ago I decided to temporarily stop pursuing client work and restart some sort of entrepreneurial dream – building some of the ideas I’ve had for a while. They’ve been bugging me for a long time, and it’s now or never really.

    I’ve never been able to hold down a job whilst attempting to build something else on the side. The job ends up distracting me and takes most of my energy. Whether its a job, freelance or contract, it always takes away the focus.

    I would never encourage anyone to do what i’m doing. Life is far easier getting a developer job and enjoying life. If you don’t want a job, contracting is lucrative and flexible. And if you are super organised you can do really well freelancing.

    So far 10% of the timeframe has already gone and the rest will go quickly. But at least I will have done something of note with my year. If I really, really can’t get something resembling a foundation up and running within 7 months then it’s sensible to take the easier and saner route.

    But for the moment, need to banish those negative thought processes. I’m pretty certain if I just keep going in the right direction eventually I will spot the opportunity. From what i’ve seen far there is an immense amount of interest in AI, and whilst a lot of people know what they are doing with it, there’s a ton that don’t. There’s even more that aren’t looking at it yet.

    It’s become cliche to say that AI will change the world but I’ll say my bit:

    1. AI has unleashed a lot of creative energy in the development world and innovation is happening very, very quickly. It’s like the human hive mind has been prodded and it’s reacted positively aggressively to it.
    2. People who focus on the shortcomings are forgetting to asses where it will be in five years.
    3. It’s not intelligent, but it mimics intelligence, hence ‘artificial’ – it is ultimately a very good world documentation service … almost everything you need to know has been compressed down to a digital knowledge cube. It might not be 100% correct all the time, but it’s more than good enough right now which is why uptake is so relentless.
    4. The everyday person can use it. There is no technical barrier now to someone being able to make all manner of digital media. And it’s remarkably cheap.
    5. When you combine Language Models with OpenCV (computer vision) and then pump them into robots – which are also frighteningly speeding up in as a reality… you realise language models are just another piece of a much bigger puzzle.
    6. Eventually people will just communicate with a LM which interfaces with some sort of interface that lets them build ‘apps’ on … but I do think apps will change very much in paradigms.
    7. Companies who embrace AI to reduce costs and increase efficiency and effectiveness will see massive profits. But there will be losers.

    Anyway thats enough for today.

    Cheers

  • Day 22 – AI : What Happens When The Cost Of Creation Is Basically Zero

    We had a meeting with a fairly large online company today and the discussion was over generating large amounts of website content for them in a reasonably clever fashion.

    Turns out Google doesn’t mind AI content really, as long as it sticks to E-E-A-T (Experience, Expertise, Authoritativeness, and Trustworthiness) and a few other things.

    People will use search engines less, but they will still be used as a supplement to language models. Language models are to search engines, what social media was to websites – i.e. websites used to be of primary importance, but social media took over. Now, likewise, language models have slightly taken away the dominance of search engines.

    So it’s still worthwhile having a content strategy.

    I think ultimately it looks like Google will reward the best of human + AI, so there is going to be some human skill requirement needed. Humans + AI will outscale humans without AI so now it’s at the point that to even ‘play the game’ you need to be strapped up with AI.

    The questions is, what happens when everyone can produce high quality:

    • video
    • music
    • programming
    • writing
    • graphics

    ?

    We are soon going to find out.

    Judging by the AI music i’ve listened to, I would suggest that musicians are in a pretty bad situation; and larger agencies who produce video (not full on editors) or adverts are at risk of being massively undercut by more nimble groups.

    The nightmare is thinking that all of a sudden that everyone is going to be your competitor but humans are inherently lazy, and not everyone is going to take full advantage of AI and will stay in their lane.

    It’s difficult when you think the mountain you have to climb is insurmountable (because the market will be flooded with competition) but ultimately this is now the time where individuals or small groups of people can compete at a much higher level. Will large organisations be able to manoeuvre as quickly? Probably not, but they have larger budgets to throw at AI.

    We are the last generation who will remember what the world was like before AI.

    Anyway I’m tired. Today’s successes were:

    • More R&D. Still playing with web crawler taking sitemaps and RSS feeds, crawling multiple pages and blending with LLMs. Will do a video on it soon.
    • Meeting with large online company
    • Onboarded developer onto a project
    • Got some admin done

  • Day 21 – Building A Startup : Time & Energy Management

    Day 21 – Building A Startup : Time & Energy Management

    In previous startups I got too involved in one aspect of the business to the detriment of the other areas. It became unbalanced.

    When I had a fully working admission booking system for the UK Theme Park industry, I focused completely on customer support and product development. I failed to look at the bigger picture. And I failed to think about sales and marketing.

    So when the 2008 financial crisis began to squeeze the UK Theme Park ticket market, they got dissolved within a few years and I was left with no new customers for the booking system.

    Likewise, when I was running a web design company in London, I failed to do proper talent scouting so I could build a team. So I just ended up burning myself out by trying to do it all.

    In hindsight, in both instances, I was in a great position, but didn’t realise it. And that could have been fixed simply by making sure I put time into different areas of focuses.

    It’s not rocket science, it’s just realising that you just need to repeat certain actions with consistency in order to build up the results that you want long term.

    Generally speaking you have these aspects of your business:

    • admin / finance / hr
    • sales / lead generation / networking
    • marketing
    • research and development
    • production
    • people

    These all depend on the overarching vision you have, but once you have that you can focus on those areas. Even if you just put in 20 minutes to each of these a day, that consistency builds up.

    Starting Point – Getting the basics right

    It’s really important to support the business side of your life, with a positive and healthy personal side. If you treat your body poorly for the next decade just to try and get to some hallowed gold at the end of it, you are potentially in for a shock. Not only do you miss the point of life, but poor health is more difficult to reverse than maintaining good health.

    Last year I began implementing some basic life habits:

    Step One – Keep Your Life Clean!

    • Clean your home / office up
    • Declutter & organise
    • Process & organise paperwork
    • Have a digital tidy
    • House & garden maintenance

    It might seem a bit ridiculous talking about these things on a Startup Blog, but the point is, these things cover the bases. If you can do fifteen minutes per cycle (choose … 24/48/72 hour) … and the amount of times I can remember feeling super overwhelmed by an untidy office and paperwork everywhere. Likewise, even now my laptop is becoming a bit of a mess and I need to streamline things.

    Also if you ever watch Kitchen Nightmares you’ll know that most of the restaurants are absolutely appalling – they don’t get cleaned simply because the owners haven’t created consistent cleaning habits.

    A recent job at a startup on my first day the desks were just caked with dust. It just needed a bit of attention. I’m not saying it will change your business into a super success, but keeping your life clean is far more preferable.

    Step Two – Life Admin

    • Personal admin & errands
    • Personal finance
    • Business admin & errands
    • Business finance
    • Investments and crypto

    Doing these things regularly really does help keep on you top of things. The challenge is doing them consistently, but they are nice and simple tasks that you can apply your willpower and discipline to.

    In my early years I left accounts to the last moment, but now I keep on top of things.

    Anyway thats enough for today.

    Today’s Work

    A good day… I did some more R&D work with AgenticAI – the python library for building virtual agents. Quite interesting really. And I started building out some migrations on the laravel project. Whilst I will be using python a lot more, at the moment it still makes sense to make the most of Laravel’s very solid functionality and integrate that with a python API.

    See Agentic work diary for today

    Really good news on one of the projects but wont jump the gun there.

    Since I’ve had a cold winter without adequate central heating, I took the opportunity to warm up and sat and meditated with breath-work in the sun again in the garden. Honestly, being your own boss does have its benefits.

    There’s a lot on at the moment. But when there’s too much to consider, it’s not productive at all … and so you need a better solution.

  • Day 20 – Conversations, Social Contact, Mental Health and How AI Will Likely Ruin Us Further

    Day 20 – Conversations, Social Contact, Mental Health and How AI Will Likely Ruin Us Further

    Today was mostly conversations.

    Are conversations useful?

    If they lead to valuable action action then yes for sure.

    But if you’ve watched Stutz on Netflix, you’ll know that real world conversations – and hence socialising – are also vital for your own wellbeing and mental health. It’s more helpful if the conversations are interesting and not poisonous, but any social contact is better than none, funnily enough.

    If you are working on your own a lot as a founder, it’s so important to have social contact to ground yourself in reality. It’s very good for your brain.

    The sad reality of future AI is that people will be more and more communicating with AI generated feedback. But it’s down to each one of us to make sure you keep on talking, especially technical founders who are introverted.

    I was listening to someone the other day who said that whoever is alive now… we are the final era of humans who knew what life was like before AI (and robots) started to take over and reduce the cost of knowledge and content creation down to almost zero.

    Interesting new world!

    In other news, did some more R&D on web crawling. It turns out you can use the Crawl4AI python package in tandem with a language model and it will automatically run it through your prompt. I’ll do a video on it another time but for the moment here is my code. It basically will rewrite the BBC article as an excited Arsenal fan.

        
        # Example 2: Using Pruning filter
        url2 = "https://www.bbc.co.uk/sport/football/live/c8j00ke2r23t"
        success2, content2, file2 = await crawl_url(
            url=url2,
            filter_type="llm",
            llm_instruction="""
            Rewrite this as if you are an excited Arsenal fan.
            Include:
            - Emotive descriptive language of the goals
            Exclude:
            - Navigation elements
            - Sidebars
            - Footer content
            Format the output as clean markdown with proper paragraphs and headers.
            """,
        )

    and this is the definition of my custom function

    import asyncio
    from crawl4ai import AsyncWebCrawler, BrowserConfig, CrawlerRunConfig, BM25ContentFilter, CacheMode, DefaultMarkdownGenerator, LLMContentFilter, PruningContentFilter
    from crawl4ai.async_configs import BrowserConfig, CrawlerRunConfig, LlmConfig
    import os
    from dotenv import load_dotenv
    
    async def crawl_url(url, filter_type="prune", query=None, llm_instruction=None):
        """
        Crawl a URL and apply a specified content filter.
        
        Args:
            url (str): The URL to crawl
            filter_type (str): Type of filter to use - "bm25", "prune", or "llm"
            query (str): Query for BM25 or Pruning filters
            llm_instruction (str): Instruction for LLM filter
            
        Returns:
            tuple: (success, markdown_content, output_filename)
        """
        # Load environment variables from .env file
        load_dotenv()
        OPENAI_API_KEY = os.environ.get("OPENAI_API_KEY")
        
        # Select the appropriate content filter based on filter_type
        if filter_type == "bm25" and query:
            content_filter = BM25ContentFilter(
                user_query=query,
                bm25_threshold=1.2,
                # use_stemming=True
            )
        elif filter_type == "prune" and query:
            content_filter = PruningContentFilter(
                user_query=query,
                threshold=0.5,
                threshold_type="fixed",  # or "dynamic"
                min_word_threshold=50
            )
        elif filter_type == "llm" and llm_instruction:
            content_filter = LLMContentFilter(
                llmConfig=LlmConfig(provider="openai/gpt-4o-mini", api_token=OPENAI_API_KEY),
                instruction=llm_instruction,
                chunk_token_threshold=4096,
                verbose=True
            )
        else:
            # Default to pruning filter with empty query if no valid filter specified
            content_filter = PruningContentFilter(
                user_query=query or "",
                threshold=0.5,
                threshold_type="fixed",
                min_word_threshold=50
            )
        
        md_generator = DefaultMarkdownGenerator(
            content_filter=content_filter,
            options={"ignore_links": True},
        )
    
        config = CrawlerRunConfig(markdown_generator=md_generator)
    
        async with AsyncWebCrawler() as crawler:
            result = await crawler.arun(url=url, config=config)
    
            if not result.success:
                print(f"Crawl failed: {result.error_message}")
                print(f"Status code: {result.status_code}")
                return False, None, None
    
            # Create a filename based on the URL
            # Remove protocol and replace special characters
            filename = url.replace("https://", "").replace("http://", "").replace("/", "_").rstrip("_")
            output_file = f"{filename}.md"
            
            # Write the extracted content to a markdown file
            with open(output_file, "w", encoding="utf-8") as f:
                f.write(result.markdown.fit_markdown)
            
            print(f"Content successfully exported to {output_file}")
            return True, result.markdown.fit_markdown, output_file